Formatar condicionalmente a linha inteira com base em um valor de célula

Formatar condicionalmente a linha inteira com base em um valor de célula

Eu sei que isso tem sidoperguntado antes, mas devo estar faltando alguma coisa. Quero colocar uma borda acima de todas as linhas que contenham “segunda-feira”.

insira a descrição da imagem aqui

A fórmula é=$B$3="*Monday*"

Achei que poderia ser porque o valor da célula é na verdade "18/04/2016", mas mudei manualmente para "Segunda-feira" e a regra ainda não foi acionada. O que estou fazendo de errado?

Responder1

Ter a fórmula apontando para $B$3 será sempre verdadeiro ou falso, se $B$3 for segunda-feira ou não. Você precisa tornar a linha uma referência relativa, ou seja, a fórmula deve ser algo como =IF($B3="Monday";TRUE;FALSE).

O $ omitido na frente da linha fará com que esta fórmula olhe para a primeira coluna de cada linha, criando assim uma borda em torno de todas as segundas-feiras.

Para melhorar a fórmula e assumindo que você tem um valor de data na sua coluna de data, eu recomendaria usar a função WEEKDAY()e verificar o valor numérico do dia da semana (vejaAjuda da Microsoft).

Responder2

Use a WEEKDAY()função.

Sintaxe:WEEKDAY(serial_number,[return_type])

Use esta fórmula em seu formato condicional, assumindo que a coluna A contém suas datas.

=WEEKDAY(A1,2)=1

Com o tipo de retorno 2, inicia a semana sendo segunda-feira o primeiro dia. Portanto, a fórmula identificará os dias da semana iguais a 1 e os formatará com sua regra.

Responder3

O problema era duplo. Eu consertei a fórmula para ser =$B3="Monday". Também tive que criar uma coluna adicional com a fórmula =TEXT(C3,"dddd")para que o valor fosse realmente "segunda-feira". Como antes, sendo o conteúdo da célula "18/04/2016", só foi exibido na segunda-feira devido ao formato da célula. Isso nunca desencadeou a condição.

Aqui está o resultado com segunda-feira substituída por sábado e domingo.

insira a descrição da imagem aqui

informação relacionada