Por várias vezes me perguntaram como fazer uma fórmula que pergunte a cor de uma célula. Em alguns casos, queriam mostrar textos conforme a cor da letra, em outros, conforme a cor do fundo.
Eu não encontrei uma forma direta de fazer isso. Então criei uma função muito simples que pode ser usada em qualquer fórmula.
O nome da função que eu criei se chama CordeFundo
Em primeiro lugar você deve criar essa função. Para isso, inclua-a em um módulo do VBA:
Public Function CordeFundo(pRange As Range) As Double
CordeFundo = pRange.Interior.Color
End Function
Se você não sabe como incluir uma função, veja meu post neste blog COMO INCLUIR UMA FUNÇÃO NO EXCEL PARA UTILIZAR EM FÓRMULAS
Em seguida, vamos preencher nossa tabela com dados para que sirva de exemplo:
Inclua um novo título na célula G1: Prioridade
Na célula G2, coloque a seguinte fórmula:
=SE(CordeFundo(A2)=255;"URGENTE";"NORMAL")
A cor 255 é a cor vermelha. Para saber o número das cores que deseja trabalhar, pinte algumas células com as cores que desejar. Suponhamos que você pinte o fundo da célula A9 de amarelo. Se você colocar esta função =CordeFundo(A9) em qualquer parte da planilha, o Excel mostrará o número da cor amarela.Na minha planilha, apareceu o número 65535 para o meu amarelo.
Voltando a nossa fórmula
=SE(CordeFundo(A2)=255;"URGENTE";"NORMAL")
Ela escreve a palavra URGENTE se O campo A2 estiver com fundo vermelho, caso contrário, escreve NORMAL.
Copie a fórmula para todas as linhas da nova coluna chamada Prioridade.
Se você não sabe como copiar una célula, veja meu post neste blog COMO COPIAR UMA CÉLULA DO EXCEL
Para criar a função que pergunte a cor da letra, criei a função chamada CordaLetra que pode ser usada da mesma forma que a função anterior.
Public Function CordaLetra(pRange As Range) As Double
CordaLetra = pRange.Font.Color
End Function
Boa Sorte.
Professora Cristine

Nenhum comentário:
Postar um comentário