S tímto tématem se setkáte na našich kurzech ExcelTown.
Kurzy se standardně konají, se zajištěním potřebných hygienických opatření.

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.

match_index_priklad_hotovy

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í.

S tímto tématem se setkáte na našich kurzech ExcelTown.
Kurzy se standardně konají, se zajištěním potřebných hygienických opatření.

Napsat komentář

Vaše emailová adresa nebude publikována.

*

smazat formulářOdeslat komentář