Fórmula do Excel: pesquisa com distinção entre maiúsculas e minúsculas -

Fórmula genérica

=INDEX(range1,MATCH(TRUE,EXACT(A1,range2),0))

Resumo

Para realizar uma pesquisa com distinção entre maiúsculas e minúsculas, você pode usar a função EXACT junto com INDEX e MATCH. No exemplo mostrado, a fórmula em F5 é:

=INDEX(C5:C14,MATCH(TRUE,EXACT(E5,B5:B14),0))

que retorna 39, a idade de "JILL SMITH".

Observação: esta é uma fórmula de matriz e deve ser inserida com Control + Shift + Enter, exceto no Excel 365.

Explicação

Basicamente, esta é uma fórmula INDEX e MATCH, com a função EXACT usada dentro de MATCH para realizar uma correspondência com distinção entre maiúsculas e minúsculas.

Trabalhando de dentro para fora, EXACT é configurado para comparar o valor em E5 com nomes no intervalo B5: B14:

EXACT(E5,B5:B14) // returns array of results

A função EXACT executa uma comparação com distinção entre maiúsculas e minúsculas e retorna TRUE ou FALSE como resultado. Apenas os valores que correspondem exatamente retornarão TRUE. Como estamos verificando o nome em E5 ("JILL SMITH") em relação a todos os dez nomes no intervalo B5: B14, obtemos uma matriz de dez valores TRUE e FALSE como este:

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

Esta matriz é retornada diretamente para a função MATCH como lookup_array como este:

MATCH(TRUE,(FALSE;FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE),0)

Com um valor de pesquisa TRUE, MATCH retorna 5, já que o único TRUE na matriz está na quinta posição. Observe também que match_type é definido como zero (0) para forçar uma correspondência exata.

A função MATCH retorna um resultado diretamente para a função INDEX como o número da linha, então agora podemos reescrever a fórmula assim:

=INDEX(C5:C14,5) // returns 39

INDEX retorna a idade na quinta linha, 39, como resultado final.

Como usar a função EXACT como esta é uma operação de matriz, a fórmula é uma fórmula de matriz e deve ser inserida com Control + Shift + Enter, exceto no Excel 365.

Com XLOOKUP

No Excel 365, a função XLOOKUP pode ser configurada para realizar uma pesquisa que diferencia maiúsculas de minúsculas de maneira semelhante a esta:

=XLOOKUP(TRUE,EXACT(J5,B5:B14),C5:C14,"na",0)

Observe que o valor de pesquisa e a matriz de pesquisa são configurados exatamente como a função MATCH acima. Após a execução EXATA, temos:

=XLOOKUP(TRUE,(FALSE;FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE),C5:C14,"na",0)

e XLOOKUP retorna o quinto item do intervalo C5: C14 (39) como resultado final.

Artigos interessantes...