Excel vzorec: Doľava vyhľadávanie s VLOOKUP -

Všeobecný vzorec

=VLOOKUP(A1,CHOOSE((1,2),range2,range1),2,0)

Zhrnutie

Ak chcete pomocou nástroja VLOOKUP vykonať vyhľadávanie vľavo, môžete pomocou funkcie CHOOSE zmeniť poradie vyhľadávacej tabuľky. V zobrazenom príklade je vzorec v F5:

=VLOOKUP(E5,CHOOSE((1,2),score,rating),2,0)

kde skóre (C5: C9) a hodnotenie (B5: B9) sú pomenované rozsahy.

Vysvetlenie

Jedným z kľúčových obmedzení funkcie VLOOKUP je, že môže vyhľadávať hodnoty iba vpravo. Inými slovami, stĺpec, ktorý obsahuje vyhľadávané hodnoty, musí ležať vľavo od hodnôt, ktoré chcete načítať pomocou funkcie VLOOKUP. Toto správanie nie je možné prepísať, pretože je pevne zapojené do funkcie. Výsledkom je, že pri normálnej konfigurácii neexistuje spôsob, ako použiť VLOOKUP na vyhľadanie hodnotenia v stĺpci B na základe skóre v stĺpci C.

Jedným z riešení je reštrukturalizácia samotnej vyhľadávacej tabuľky a presunutie vyhľadávacieho stĺpca doľava od vyhľadávacích hodnôt. Toto je prístup použitý v tomto príklade, ktorý využíva reverzné hodnotenie a hodnotenie funkciou CHOOSE takto:

CHOOSE((1,2),score,rating)

Normálne sa CHOOSE používa s jediným číslom indexu ako prvým argumentom a zvyšné argumenty sú hodnotami, z ktorých je možné vyberať. Tu však dáme voľbu konštanty poľa pre indexové číslo obsahujúce dve čísla: (1,2). V zásade požadujeme výber pre prvú aj druhú hodnotu.

Hodnoty sa v príklade poskytujú ako dva pomenované rozsahy: skóre a hodnotenie. Všimnite si však, že tieto rozsahy poskytujeme v opačnom poradí. Funkcia CHOOSE vyberie obidva rozsahy v uvedenom poradí a vráti výsledok ako jedno pole, ako je toto:

(5,"Excellent";4,"Good";3,"Average";2,"Poor";1,"Terrible")

CHOOSE vráti toto pole priamo do VLOOKUP ako argument poľa tabuľky. Inými slovami, CHOOSE dodáva do vyhľadávača VLOOKUP takúto vyhľadávaciu tabuľku:

Pomocou vyhľadávacej hodnoty v E5 vyhľadá VLOOKUP zhodu vo vnútri novovytvorenej tabuľky a vráti výsledok z druhého stĺpca.

Zmena poradia s konštantou poľa

V zobrazenom príklade meníme poradie vyhľadávacej tabuľky obrátením výrazov „hodnotenie“ a „skóre“ vo vnútri vybranej funkcie. Namiesto toho by sme však mohli použiť konštantu poľa na nové usporiadanie takto:

CHOOSE((2,1),rating,score)

Výsledok je úplne rovnaký.

S INDEXOM a ZÁPASOM

Aj keď vyššie uvedený príklad funguje dobre, nie je to ideálne. Po prvé, väčšina priemerných používateľov nechápe, ako vzorec funguje. Prirodzenejšie riešenie je INDEX a MATCH. Tu je ekvivalentný vzorec:

=INDEX(rating,MATCH(E5,score,0))

Toto je v skutočnosti dobrý príklad toho, ako je INDEX a MATCH flexibilnejší ako VLOOKUP.

Zaujímavé články...