Como altero a cor de uma célula com base no fato de as células anteriores estarem em branco no Excel?

Como altero a cor de uma célula com base no fato de as células anteriores estarem em branco no Excel?

Tenho uma planilha com nomes na coluna A. Estou mantendo a frequência colocando um “X” em cada coluna subsequente quando a pessoa está presente (semana a semana).

Gostaria que o Excel alterasse automaticamente o intervalo de células para VERMELHO quando a célula e as duas células anteriores estiverem em branco, mostrando efetivamente vermelho quando alguém estiver ausente por três semanas consecutivas.

Como posso fazer isso usando o Excel 2010?

Responder1

Como o chuff diz em seu comentário, você pode fazer isso com formatação condicional. Na verdade, construir a fórmula necessária é moderadamente complicado, pois o Excel não facilita a referência direta à célula a ser formatada. Aqui está uma solução que contorna essa dificuldade, embora tenha certeza de que está longe de ser a mais elegante possível:

=3=COUNTBLANK(INDIRECT(CHAR(COLUMN()+62)&ROW()&":"&CHAR(COLUMN()+64)&ROW()))

A ideia aqui é construir uma string contendo o intervalo de interesse (a célula a ser formatada e seus dois vizinhos à esquerda) usando ROW() e COLUMN(), que INDIRECT() então transforma em uma referência a esse intervalo. Esperamos que a função de COUNTBLANK() seja óbvia.

EDIÇÕES: Conforme observado nos comentários abaixo, há alguma ambigüidade em sua solicitação. A fórmula acima deve funcionar se o que você desejacomece a destacar com a terceira ausência. Ou seja, numa sequência de exatamente 3 ausências, apenas a terceira terá destaque. Talvez, em vez disso, o que você queira é destacar a totalidade de qualquer série de ausências de duração 3 ou superior.

É ainda menos bonito, mas minha solução certamente pode ser estendida para isso. Acima, verificamos se uma célula é a última de uma série de três. Também podemos verificar se está no meio ou no início de tal execução e, em seguida, OU tudo junto:

=OR(  
    3=COUNTBLANK(INDIRECT(CHAR(COLUMN()+62)&ROW()&":"&CHAR(COLUMN()+64)&ROW())),
    3=COUNTBLANK(INDIRECT(CHAR(COLUMN()+63)&ROW()&":"&CHAR(COLUMN()+65)&ROW())),
    3=COUNTBLANK(INDIRECT(CHAR(COLUMN()+64)&ROW()&":"&CHAR(COLUMN()+66)&ROW())),
   )

Responder2

Não consegui fazer com que as verificações de tipo COUNTBLANK ou IF(OR({Cell}="x")) funcionassem corretamente para mim, então fiz o seguinte:

  1. Começando na terceira coluna de datas de frequência do primeiro aluno
  2. Clique em "Formatação Condicional" -> "Nova Regra..."
  3. Escolha "Usar uma fórmula para determinar quais células formatar"
  4. Insira (assumindo que os participantes começam na linha 1 e as datas começam na coluna B) =COUNTBLANK(B1:D1)>2no campo "Formate valores onde esta fórmula seja verdadeira" caixa
  5. Clique em "Formatar..."
  6. Vá para a guia "Preencher", escolha vermelho e clique em OK
  7. Clique OK.

Depois, basta clicar na cruz no canto inferior direito da célula e copiar a formatação na linha. Clique na cruz novamente e copie a formatação para as linhas abaixo e repita para essas linhas (por algum motivo, não consegui copiar a formatação dessa condição para um intervalo grande de células)

informação relacionada