
Všeobecný vzorec
=INDEX(range1,MATCH(TRUE,EXACT(A1,range2),0))
Zhrnutie
Ak chcete vyhľadať veľké a malé písmená, môžete použiť funkciu EXACT spolu s INDEX a MATCH. V ukážke je vzorec v F5:
=INDEX(C5:C14,MATCH(TRUE,EXACT(E5,B5:B14),0))
ktorý vracia 39 rokov, vek „JILL SMITH“.
Poznámka: toto je vzorec poľa a musí byť zadaný pomocou kombinácie klávesov Control + Shift + Enter, okrem Excel 365.
Vysvetlenie
V jadre ide o vzorec INDEX a MATCH, pričom funkcia EXACT sa používa vo vnútri MATCH na vykonanie zhody s malými a veľkými písmenami.
Pri práci zvnútra von je EXACT nakonfigurovaný na porovnanie hodnoty v E5 s názvami v rozsahu B5: B14:
EXACT(E5,B5:B14) // returns array of results
Funkcia EXACT vykoná porovnanie veľkých a malých písmen a vo výsledku vráti TRUE alebo FALSE. Iba hodnoty, ktoré sa presne zhodujú, vrátia hodnotu TRUE. Pretože kontrolujeme meno v E5 („JILL SMITH“) proti všetkým desiatim menám v rozsahu B5: B14, dostaneme späť pole desiatich TRUE a FALSE hodnôt ako je toto:
(FALSE;FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE)
Toto pole sa vracia priamo do funkcie MATCH ako lookup_array takto:
MATCH(TRUE,(FALSE;FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE),0)
S vyhľadávacou hodnotou TRUE vráti MATCH 5, pretože jediný TRUE v poli je na piatej pozícii. Všimnite si tiež, že match_type je nastavený na nulu (0), aby vynútil presnú zhodu.
Funkcia MATCH vráti výsledok priamo do funkcie INDEX ako číslo riadku, takže teraz môžeme tento vzorec prepísať takto:
=INDEX(C5:C14,5) // returns 39
INDEX vráti vek v piatom rade, 39 rokov, ako konečný výsledok.
Pretože takáto funkcia EXACT je operácia s poľom, vzorec je maticový vzorec a musí byť zadaný pomocou kombinácie klávesov Control + Shift + Enter, s výnimkou Excelu 365.
S XLOOKUPOM
V programe Excel 365 možno funkciu XLOOKUP nakonfigurovať tak, aby sa pri rozlišovaní veľkých a malých písmen postupovalo podobným spôsobom, ako je tento:
=XLOOKUP(TRUE,EXACT(J5,B5:B14),C5:C14,"na",0)
Všimnite si, že vyhľadávacia hodnota a vyhľadávacie pole sú nastavené rovnako ako vyššie uvedená funkcia MATCH. Po EXACT behoch máme:
=XLOOKUP(TRUE,(FALSE;FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE),C5:C14,"na",0)
a XLOOKUP vráti ako konečný výsledok piatu položku z rozsahu C5: C14 (39).