Excel formula: Prvo ujemanje med dvema obsegoma -

Kazalo

Splošna formula

=INDEX(range2,MATCH(TRUE,COUNTIF(range1,range2)>0,0))

Povzetek

Če želite pridobiti prvo ujemanje v dveh obsegih vrednosti, lahko uporabite formulo, ki temelji na funkcijah INDEX, MATCH in COUNTIF. V prikazanem primeru je formula v G5:

=INDEX(range2,MATCH(TRUE,COUNTIF(range1,range2)>0,0))

kjer je "obseg1" imenovani obseg B5: B8, "obseg2" je imenovani obseg D5: D7.

Pojasnilo

V tem primeru se imenovani obseg "obseg1" nanaša na celice B5: B8, imenovani obseg "obseg2" pa se nanaša na D5: D7. Imenovane obsege uporabljamo samo za udobje in berljivost; formula dobro deluje tudi z običajnimi referencami celic.

Jedro te formule sta INDEX in MATCH. Funkcija INDEX pridobi vrednost iz obsega2, ki predstavlja prvo vrednost v obsegu2, ki jo najdemo v obsegu1. Funkcija INDEX zahteva indeks (številka vrstice) in to vrednost generiramo s pomočjo funkcije MATCH, ki je nastavljena tako, da ustreza vrednosti TRUE v tem delu formule:

MATCH(TRUE,COUNTIF(range1,range2)>0,0)

Tu je vrednost ujemanja TRUE in iskalno polje je tukaj ustvarjeno s COUNTIF:

COUNTIF(range1,range2)>0

COUNTIF vrne število vrednosti obsega2, ki se pojavijo v obsegu1. Ker obseg2 vsebuje več vrednosti, bo COUNTIF vrnil več rezultatov, ki so videti tako:

(0;0;1)

Z "> 0" prisilimo vse rezultate v TRUE ali FALSE:

(FALSE;FALSE;TRUE)

Nato MATCH naredi svoje in vrne položaj prve TRUE (če obstaja), ki se prikaže, v tem primeru številka 3.

Na koncu INDEX vrne vrednost na tem položaju, "Red".

Zanimive Članki...