Syntax excel funkcie VLOOKUP
VLOOKUP(vyhľadávaná_hodnota, pole_tabuľky, číslo_indexu_stĺpca, [vyhľadávanie_rozsahu])
Argumenty funkcie
- vyhľadávaná_hodnota Je povinným argumentom. Hodnota, ktorú chceme vyhľadať v prvom stĺpci tabuľky alebo vo zvolenom rozsahu buniek. Argument vyhľadávaná_hodnota môže byť hodnota alebo aj odkaz.
- pole_tabuľky Je povinným argumentom. Ide o rozsah buniek s údajmi. Ak chceme prehľadávať bunky v stĺpci A a k nájdenej bunky vrátiť bunku zo stĺpca C, musíme označiť do poľa tabuľky celý tento rozsah. Môžeme použiť odkaz na rozsah buniek (napríklad A1:C100) alebo názov rozsahu. Častá chyba však býva, že hodnoty v prvom stĺpci argumentu pole_tabuľky sú hodnoty, medzi ktorými sa bude hľadať hodnota argumentu vyhľadávaná_hodnota. Čiže prehľadáva sa vždy prvý stĺpec z poľa tabuľky. Malé a veľké písmená sa nerozlišujú.
- číslo_indexu_stĺpca Je ďalším povinným argumentom. Číslo stĺpca z predošlého argumentu pole_tabuľky, z ktorého funkcia vráti danú hodnotu. V prípade, ak je argument číslo_indexu_stĺpca menší ako 1, to znamená 0,-1, tak funkcia VLOOKUP vráti chybovú hodnotu #HODNOTA!, pretože by sme sa posúvali mimo nami zvoleného poľa tabuľky. Ak však je tento argument väčší ako počet stĺpcov z argumentu pole_tabuľky, funkcia VLOOKUP vráti chybovú hodnotu #ODKAZ!, pretože sa opäť posúvame mimo nami zvoleného argumentu poľa tabuľky. Pri argumente číslo_indexu_stĺpca = 2 vráti funkcia hodnotu z druhého stĺpca argumentu pole_tabuľky atď
- vyhľadávanie_rozsahu Je voliteľným argumentom. Ide o logickú hodnotu, ktorá nadobúda dve rôzne logické hodnoty – TRUE alebo FALSE. Ak argument vyhľadávanie_rozsahu nie je zadaný alebo nadobúda hodnotu TRUE, vráti sa úplná alebo aspoň približná zhoda. Ak argumentu vyhľadávanie_rozsahu zvolíme hodnotu FALSE, funkcia VLOOKUP nájde iba úplnú zhodu. Ak sa však v prvom stĺpci argumentu pole_tabuľky nachádza viac ako len jedna hodnota zhodná s argumentom vyhľadávaná_hodnota, potom funkcia vyberie len prvú nájdenú. Na to si treba dať pozor. V prípade, že sa ale nenájde úplná zhoda, vráti sa chybová hodnota #NEDOSTUPNÝ.
Príklad funkcie VLOOKUP v praxi
Predstavme si, že máme zoznam občanov s ich príjmom. Na základe ich príjmu by sme všetkým občanom chceli prideliť do ďalšieho stĺpca daň z príjmu na základe ich príjmu. A práve o tom je náš príklad. V prvom stĺpci máme nejaké ID občana, momentálne pre nás bezpredmetné. V stĺpci B máme zoznam mien a v stĺpci C ich príjem. Do stĺpcu D by sme chceli napasovať daň z príjmu na základe ich príjmu. Vytvorili sme si pomocnú tabuľku, ktorá určuje výšku dane podľa výšky príjmu – stĺpce F a G.
A teraz k zápisu funkcie
- Vyhľadávaná hodnota je v našom prípade príjem občana, čiže bunka C2
- Pole tabuľky, kde by sa mala vyhľadávaná hodnota nachádzať je F2 až G11, čiže F2:G11. Pozor, vyhľadávaná hodnota sa však vždy a vždy musí nachádzať v prvom stĺpci poľa tabuľky.
- Číslo indexu stĺpca je v našom prípade číslo 2. To znamená, že keď nájdem hodnotu 5 000 v poli tabuľky, vráť mi druhý stĺpec v rovnakom riadku, t.j. hodnotu 50%.
- Vyhľadávanie rozsahu nadobúda logickú hodnotu FALSE, keďže chceme dosiahnuť presnú zhodu, a nie len približnú.
- Takto vytvorený vzťah môžeme už len aplikovať na všetky bunky v stĺpci D. Ešte predtým však zafixujme pole tabuľky na to, aby sa relatívne vo vzorci nemenilo. Docielime to stlačením F4 a tým dosiahneme absolútne hodnoty poľa tabuľky F2:G11 -> $F$2:$G$11
VLOOKUP s použitím funkcie IF
Predstavme si situáciu, že občan Roger Federer bude mať príjem 5 500. Pre nás to znamená, že táto hodnota sa nenachádza v tabuľke určujúcej výšku DPH. Za normálnych okolností by sme dostali chybný výsledok #NEDOSTUPNÝ. Preto takýto prípad môžeme ošetriť za použitia už spomínanej funkcie IF a TRUE. Zápis by vyzeral nasledovne (D2):
Príklady aj so súborom si môžete stiahnúť tu – Funkcia VLOOKUP.xlsx
Podrobný návod k funkcii si môžete prečítať na HowToGeek.