Fórmula do Excel: XLOOKUP com lógica booleana OR -

Fórmula genérica

=XLOOKUP(1,boolean_expression,data)

Resumo

Para configurar XLOOKUP com lógica booleana OR, use um valor de pesquisa de 1 com uma expressão lógica baseada na adição. No exemplo mostrado, a fórmula em G5 é:

=XLOOKUP(1,(data(Color)="red")+(data(Color)="pink"),data)

onde "dados" é o nome da Tabela do Excel à esquerda.

Explicação

O valor de pesquisa é fornecido como 1, por motivos que ficam claros a seguir. Para a matriz de pesquisa, usamos uma expressão baseada na lógica booleana:

(data(Color)="red")+(data(Color)="pink")

No mundo da álgebra booleana, a lógica AND corresponde à multiplicação (*) e a lógica OR corresponde à adição (+). Porque queremos a lógica OR, usamos adição neste caso. Observe que o Excel não faz distinção entre maiúsculas e minúsculas, portanto, não precisamos colocar as cores em letras maiúsculas.

Depois que a expressão é avaliada, temos duas matrizes de valores TRUE e FALSE como este:

(FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE)+ (FALSE;FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;FALSE;TRUE)

Observe, na primeira matriz, os valores TRUE correspondem a "vermelho". Na segunda matriz, os valores TRUE correspondem a "rosa".

A operação matemática de adicionar essas matrizes converte os valores VERDADEIRO e FALSO em 1s e 0s e resulta em uma nova matriz composta apenas de 1s e 0s:

(0;0;1;0;1;0;0;0;0;1)

Observe que os 1s nesta matriz correspondem às linhas em que a cor é "vermelho" ou "rosa".

Agora podemos reescrever a fórmula como:

=XLOOKUP(1,(0;0;1;0;1;0;0;0;0;1),data)

O primeiro 1 na matriz de pesquisa corresponde à linha três dos dados, onde a cor é "vermelho". Como XLOOKUP retornará, por padrão, a primeira correspondência e como todos os "dados" da tabela são fornecidos como a matriz de retorno, XLOOKUP retorna a terceira linha como resultado final.

Artigos interessantes...