
Obecný vzorec
=VLOOKUP(lookup_value,table,MATCH(col_name,col_headers,0),0)
souhrn
Předmluva
Uvnitř funkce VLOOKUP je argument indexu sloupce obvykle pevně zakódován jako statické číslo. Můžete však také vytvořit dynamický index sloupce pomocí funkce MATCH k vyhledání pravého sloupce. Tato technika umožňuje vytvořit dynamické obousměrné vyhledávání, které se shoduje s řádky i sloupci. Může také vytvořit vzorec VLOOKUP odolnější: VLOOKUP se může rozbít, když jsou sloupce vloženy nebo odebrány z tabulky, ale vzorec s VLOOKUP + MATCH může i nadále správně fungovat, i když jsou ve sloupcích provedeny změny.
Příklad
V příkladu používáme tento vzorec k dynamickému vyhledávání řádků i sloupců pomocí VLOOKUP:
=VLOOKUP(H2,B3:E11,MATCH(H3,B2:E2,0),0)
H2 dodává vyhledávací hodnotu pro řádek a H3 dodává vyhledávací hodnotu pro sloupec.
Vysvětlení
Toto je standardní vzorec VLOOKUP přesné shody s jednou výjimkou: index sloupce je dodáván funkcí MATCH.
Všimněte si, že vyhledávací pole dané MATCH (B2: E2) představující záhlaví sloupců záměrně zahrnuje prázdnou buňku B2. To se provádí tak, že číslo vrácené MATCH je synchronizováno s tabulkou používanou VLOOKUP. Jinými slovy, MATCH musíte dát rozsah, který zahrnuje stejný počet sloupců, které VLOOKUP používá v tabulce. V příkladu (pro únor) MATCH vrátí 3, takže po spuštění MATCH vypadá vzorec VLOOKUP takto:
=VLOOKUP(H2,B3:E11,3,0)
Což vrací prodej Colby (řádek 4) v únoru (sloupec 3), což je 6 786 USD.