
Obecný vzorec
=INDEX(data,MATCH(value,lookup_column,FALSE),column)
souhrn
Tento příklad ukazuje, jak použít INDEX a MATCH k získání informací z tabulky na základě přesné shody. V zobrazeném příkladu je vzorec v buňce H6:
=INDEX(B5:E9,MATCH(H4,B5:B9,FALSE),2)
který se vrací do roku 1995, roku vydání filmu Příběh hraček.
Vysvětlení
Tento vzorec používá funkci MATCH k získání pozice řádku Toy Story v tabulce a funkce INDEX k načtení hodnoty na daném řádku ve sloupci 2. MATCH je nakonfigurován tak, aby hledal hodnotu v H4 ve sloupci B:
MATCH(H4,B5:B9,FALSE)
Všimněte si, že poslední argument je FALSE, který nutí MATCH provést přesnou shodu.
MATCH najde "Toy Story" na řádku 4 a vrátí toto číslo na INDEX jako číslo řádku. INDEX je nakonfigurován s polem, které zahrnuje všechna data v tabulce, a číslo sloupce je pevně zakódováno jako 2. Jakmile MATCH vrátí 4, máme:
=INDEX(B5:E9,4,2)
INDEX poté načte hodnotu v průsečíku 4. řádku a 2. sloupce v poli, což je „1995“.
Ostatní vzorce v příkladu jsou stejné, kromě čísla sloupce:
=INDEX(B5:E9,MATCH(H4,B5:B9,FALSE),2) // year =INDEX(B5:E9,MATCH(H4,B5:B9,FALSE),3) // rank =INDEX(B5:E9,MATCH(H4,B5:B9,FALSE),4) // sales
INDEX s jedním sloupcem
Ve výše uvedeném příkladu INDEX přijímá pole, které obsahuje všechna data v tabulce. Vzorce však můžete snadno přepsat tak, aby fungovaly pouze s jedním sloupcem, což eliminuje potřebu zadávat číslo sloupce:
=INDEX(C5:C9,MATCH(H4,B5:B9,FALSE)) // year =INDEX(D5:D9,MATCH(H4,B5:B9,FALSE)) // rank =INDEX(E5:E9,MATCH(H4,B5:B9,FALSE)) // sales
V každém případě INDEX obdrží jednosloupcové pole, které odpovídá načítaným datům, a MATCH dodává číslo řádku.