SVYHLEDAT / VLOOKUP pro dohledávání z více tabulek
S tímto tématem se setkáte na našich kurzech ExcelTown.
Aktuálně: kurzy můžete absolvovat jak online, tak prezenčně.
Tento článek popisuje, jak použít funkci SVYHLEDAT v situaci, kdy máme více zdrojových tabulek a dopředu nevíme, která se má použít. (Pokud vás zajímá návod na propojování dvou tabulek podle více klíčových sloupců, klikněte sem.)
Např. tady potřebujeme do růžové oblasti vlevo přiřadit ceny různých položek.. Ty jsou ale ne v jednom, ale ve dvou (třech, čtyřech... ) cenících.
Pokud by ceník byl jeden, je to hračka - použijeme běžnou funkci SVYHLEDAT / VLOOKUP.
Pro více ceníků budeme postupovat trochu jinak. Nejprve zkusíme najít položku v prvním, a pokud se nenajde (výsledek bude chyba), zkusíme druhý ceník, a pokud se zase nenajde... atd.
Kromě SVYHLEDAT použijeme funkci IFNA. Ta nahradí případné chybné hodnoty něčím jiným - tedy pokusem najít ve druhé tabulce. (Funkce IFNA funguje podobně jako IFERROR - jen za chybu považuje pouze chybu #N/A a nikoliv ostatní chyby. Pokud byste ale měli starou verzi Excelu bez funkce IFNA, použijte IFERROR...)
Pokud by položky byly pouze z prvního ceníku zvířat, zadali bychom funkci takto:
- =SVYHLEDAT(A:A;D:E;2;0)
Protože jsou ale ceníky dva, zadáme vzorec takto:
- =IFNA(SVYHLEDAT(A:A;D:E;2;0);SVYHLEDAT(A:A;G:H;2;0))
Tedy "když první SVYHLEDAT v tabulce D:E skončí chybou, zkus SVYHLEDAT v tabulce G:H".
Pokud by tabulek bylo více, můžeme zapisovat další a další vrstvy:
- =IFNA(IFNA(SVYHLEDAT(A:A;D:E;2;0);SVYHLEDAT(A:A;G:H;2;0));SVYHLEDAT(..))
S tímto tématem se setkáte na našich kurzech ExcelTown.
Aktuálně: kurzy můžete absolvovat jak online, tak prezenčně.
Lámu si marně hlavu s vnořováním kombinace těchto funkcí. V mém případě se vyhledává v F18, tabulky jsou A:B, C:D, E:F, G:H, I:J. Logicky jsem to zapsal takto, ale evidentně je to špatně. =IFERROR(SVYHLEDAT(F18;Zaměření!A:B;2;0);SVYHLEDAT(F18;Zaměření!C:D;2;0));(SVYHLEDAT(F18;Zaměření!E:F;2;0);SVYHLEDAT(F18;Zaměření!G:H;2;0));(SVYHLEDAT(F18;Zaměření!I:J;2;0))
Vy ty funkce dáváte za sebe – musíte je ale dávat všechny postupně DO sebe…
No trvalo to, než mi došla logika vnořování, ale už to běhá. Nicméně nakonec těch tabulek k vyhledávání bude 17 a ten vzorec bude šílený. Neexistuje ještě nějaká jednodušší metoda?
Můžete si je spojit do jedné tabulky (třeba na úplně jiný list, může být i skrytý) a v tom listu hledat:
https://exceltown.com/navody/power-bi/power-query/spojovani-tabulek-v-power-query-nacist-a-transformovat/slucovani-tabulek-s-powerquerry/
Jinak pro zpřehlednění vzorce může pomoci toto:
https://exceltown.com/navody/postupy-a-spinave-triky/klavesove-zkratky/radkovani-v-ramci-bunky/