Výuka a školení Excelu Výuka a školení Excelu Výuka a školení Excelu
Výuka a školení Excelu Výuka a školení Excelu

úterý 24. září 2013

Fígl s kombinací funkcí INDEX a MATCH

Nejspíše někdy používáte funkci VLOOKUP (SVYHLEDAT). Je to funkce velmi užitečná, má ale jednu nevýhodu, na kterou občas narazíte.

Příklad

V následujícím příkladu potřebuji doplnit k zaměstnancům jméno jejich nadřízeného. Na základě toho, do kterého oddělení zaměstnanec patří - protože každé oddělení má svého jednoho šéfa.



Mohl bych použít VLOOKUP. Ale to by musely sloupečky v tabulce vpravo mít obrácené pořadí. Funkce VLOOKUP totiž vyžaduje, aby v tabulce, na kterou se odkazuji, bylo v prvním sloupci to, podle čeho se obě tabulky propojují. Jinými slovy - tabulky jsou propojené přes název oddělení, proto v tabulce vpravo musí být sloupec s názvy oddělení vlevo od jména šéfa.

Návod

Sloupce bych mohl prohodit, ale ne vždy je to možné.
Proto použiji kombinaci funkcí INDEX a MATCH (POZVYHLEDAT), která mě toto umožní. Zápis do buňky C2, který pak roztáhnu, bude vypadat takto:
=INDEX(E:E;MATCH(B2;F:F;0))
Logika je taková, že:
  • Nejprve funkce MATCH zjistí, kolikátá je určitá hodnota ve sloupci. V našem případě zjistí, že hodnota "HR" je ve sloupci F na druhém místě. Výstupem vnořené funkce je tedy dvojka.
  • Pak funkce INDEX zjistí, co je na tomto místě v určitém sloupci. V našem případě zjistí, že na druhém místě je ve sloupci E hodnota "Hanka". A výstupem funkce, čili přiřazením nadřízeného pro Adélu, je správně "Hanka".
Vzorec roztáhnu a mám ošetřené všechny hodnoty / všechny zaměstnance.

Upozornění

Aby tato kombinace funkcí fungovala, musí být hodnoty v prohledávaném sloupci seřazené podle abecedy. Jinak se výsledky tváří, že fungují, ale nefungují.


Žádné komentáře:

Okomentovat