Posso usar a cor de fundo de uma célula do Excel como uma condição em uma fórmula?

1

Como eu digo no título, posso usar a cor do plano de fundo ou o formato de uma célula do Excel como uma condição em uma fórmula?

Por exemplo: Eu tenho uma grade de números e nomes que eu seleciono manualmente se eu quiser que a célula esteja em um formato "vermelho" ou "verde". E eu gostaria de ter um contador de quantas células "verdes" e "vermelhas" eu tenho.

É possível? Você consegue pensar em outra maneira de conseguir algo semelhante?

    
por Roboritox 22.01.2018 / 01:37

2 respostas

1

Sim, você pode usar as cores de fundo da célula na fórmula.

Agora, escolho o próximo "Como formatar células usando fórmulas" .

Desde que você não tenha escrito e condições específicas para o formato em RED & VERDE para que eu gostaria de mostrar como preencher célula ou intervalo de células com cor, com base em seus dados ou com base no valor de outras células.

=OR(A2="NY",A2="Moscow",A2="New Delhi")

=AND(A1>1000,B1<500)

=AND(A2>NOW(),A2<=(NOW()+20))

=If(and(A2>=100, A2<=500))

NB: Nos exemplos acima eu usei a coluna A. Esses valores podem ser testados para formatar outras colunas, mas nesse caso você precisa selecionar Both ou All Columns primeiro e então aplicar a fórmula.

Agora, gostaria de resolver a outra parte que "como definir o contador de cores".

Você pode contar as células com base em sua cor de fundo, usando abaixo escrito código VBA.

 Function CountByColour(rColor As Range, rRange As Range, Optional SUM As Boolean)

 Dim rCell As Range
 Dim lCol As Long
 Dim vResult

  lCol = rColor.Interior.ColorIndex

   If SUM = True Then

    For Each rCell In rRange

     If rCell.Interior.ColorIndex = lCol Then
vResult = WorksheetFunction.SUM(rCell, vResult)
   End If

   Next rCell

Else

  For Each rCell In rRange

   If rCell.Interior.ColorIndex = lCol Then
vResult = 1 + vResult
   End If

 Next rCell

 End If

 CountByColour = vResult        
 End Function

NB: Copiar & Cole este código como MODULE usando o VBA Editor e escreva uma fórmula como essa para usar a função.

=CountByColour(A2,B2:J6,FALSE) , em que A2 é Amostra de Célula e B2: J6 é o Gama em que Cor como A2 deve ser Contada.

Nota: Este código foi testado por mim antes de ser publicado aqui.

Espero que isso ajude você.

    
por 22.01.2018 / 08:35
0

Para responder à sua pergunta como postado: NÃO.

Se você formatou manualmente a cor de preenchimento da célula, precisará do VBA avaliar o preenchimento da célula como uma entrada para uma fórmula. Isso exigirá programação, não apenas escrevendo uma fórmula de célula do Excel.

Se você usar a formatação condicional para definir uma cor de preenchimento de célula, YES poderá usar a mesma lógica da regra de formatação condicional para processar ainda mais células para soma ou contagem. Olhe para Sumifs () e Countifs ().

    
por 22.01.2018 / 08:40