
Všeobecný vzorec
=INDEX(range2,MATCH(TRUE,COUNTIF(range1,range2)>0,0))
Zhrnutie
Ak chcete načítať prvú zhodu v dvoch rozsahoch hodnôt, môžete použiť vzorec založený na funkciách INDEX, MATCH a COUNTIF. V zobrazenom príklade je vzorec v G5:
=INDEX(range2,MATCH(TRUE,COUNTIF(range1,range2)>0,0))
kde „rozsah1“ je pomenovaný rozsah B5: B8, „rozsah2“ je pomenovaný rozsah D5: D7.
Vysvetlenie
V tomto príklade pomenovaný rozsah „rozsah1“ označuje bunky B5: B8 a pomenovaný rozsah „rozsah2“ označuje D5: D7. Pomenované rozsahy používame iba pre pohodlie a čitateľnosť; vzorec funguje dobre aj s bežnými odkazmi na bunky.
Jadro tohto vzorca je INDEX a MATCH. Funkcia INDEX načíta hodnotu z rozsahu2, ktorá predstavuje prvú hodnotu v rozsahu2, ktorá sa nachádza v rozsahu1. Funkcia INDEX vyžaduje index (číslo riadku) a túto hodnotu vygenerujeme pomocou funkcie MATCH, ktorá je nastavená tak, aby zodpovedala hodnote TRUE v tejto časti vzorca:
MATCH(TRUE,COUNTIF(range1,range2)>0,0)
Tu je hodnota zhody TRUE a vyhľadávacie pole sa tu vytvorí pomocou COUNTIF:
COUNTIF(range1,range2)>0
Funkcia COUNTIF vráti počet hodnôt rozsahu2, ktoré sa zobrazia v rozsahu1. Pretože rozsah2 obsahuje viac hodnôt, COUNTIF vráti viac výsledkov, ktoré vyzerajú takto:
(0;0;1)
Pomocou „> 0“ vynútime, aby boli všetky výsledky TRUE alebo FALSE:
(FALSE;FALSE;TRUE)
Potom MATCH urobí svoje a vráti pozíciu prvého PRAVDA (ak existuje), ktoré sa objaví, v tomto prípade číslo 3.
Nakoniec INDEX vráti hodnotu na tejto pozícii „Červenú“.