
Formula generica
=INDEX(range1,MATCH(TRUE,EXACT(A1,range2),0))
Sommario
Per eseguire una ricerca con distinzione tra maiuscole e minuscole, è possibile utilizzare la funzione ESATTO insieme a INDICE e CONFRONTA. Nell'esempio di spettacolo, la formula in F5 è:
=INDEX(C5:C14,MATCH(TRUE,EXACT(E5,B5:B14),0))
che restituisce 39, l'età di "JILL SMITH".
Nota: questa è una formula di matrice e deve essere inserita con Control + Maiusc + Invio, tranne che in Excel 365.
Spiegazione
Al centro, questa è una formula INDICE e CONFRONTA, con la funzione ESATTA utilizzata all'interno di CONFRONTA per eseguire una corrispondenza sensibile al maiuscolo / minuscolo.
Lavorando dall'interno verso l'esterno, EXACT è configurato per confrontare il valore in E5 con i nomi nell'intervallo B5: B14:
EXACT(E5,B5:B14) // returns array of results
La funzione ESATTO esegue un confronto con distinzione tra maiuscole e minuscole e come risultato restituisce VERO o FALSO. Solo i valori che corrispondono esattamente restituiranno TRUE. Poiché stiamo controllando il nome in E5 ("JILL SMITH") rispetto a tutti e dieci i nomi nell'intervallo B5: B14, otteniamo un array di dieci valori TRUE e FALSE come questo:
(FALSE;FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE)
Questo array viene restituito direttamente alla funzione MATCH come lookup_array in questo modo:
MATCH(TRUE,(FALSE;FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE),0)
Con un valore di ricerca TRUE, MATCH restituisce 5, poiché l'unico TRUE nella matrice si trova alla quinta posizione. Notare anche che match_type è impostato su zero (0) per forzare una corrispondenza esatta.
La funzione CONFRONTA restituisce un risultato direttamente alla funzione INDICE come numero di riga, quindi ora possiamo riscrivere la formula in questo modo:
=INDEX(C5:C14,5) // returns 39
INDICE restituisce l'età nella quinta riga, 39, come risultato finale.
Poiché l'utilizzo della funzione ESATTO come questa è un'operazione di matrice, la formula è una formula di matrice e deve essere immessa con Control + Maiusc + Invio, tranne che in Excel 365.
Con XLOOKUP
In Excel 365, la funzione XLOOKUP può essere configurata per eseguire una ricerca con distinzione tra maiuscole e minuscole in un modo simile come questo:
=XLOOKUP(TRUE,EXACT(J5,B5:B14),C5:C14,"na",0)
Si noti che il valore di ricerca e l'array di ricerca sono impostati proprio come la funzione MATCH sopra. Dopo l'esecuzione ESATTA, abbiamo:
=XLOOKUP(TRUE,(FALSE;FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE),C5:C14,"na",0)
e XLOOKUP restituisce il quinto elemento dell'intervallo C5: C14 (39) come risultato finale.