VLOOKUP
Funkce VLOOKUP vrátí hodnotu ze sbírky sloupců tak, že k výběru řádku využije levý sloupec hodnot, v němž pak podle zadaného čísla sloupce vybere požadovaný sloupec.
Tip: Chcete-li použít vylepšené hledání s možností procházení libovolným směrem, použijte funkci XLOOKUP.
VLOOKUP(hledaná-hodnota; rozmezí-sloupců; sloupec, blízká-shoda)
hledaná-hodnota: Hledaná hodnota. hledaná-hodnota může být hodnota libovolného typu nebo řetězec REGEX.
rozmezí-sloupců Skupina buněk. Argument rozmezí-sloupců musí obsahovat odkaz na jedno rozmezí buněk, které mohou obsahovat libovolné hodnoty.
sloupec: Číselná hodnota udávající relativní číslo sloupce buňky, jejíž hodnota má být vrácena. Sloupec, který se v oblasti nachází nejvíce vlevo, má číslo 1.
blízká-shoda: Nepovinná modální hodnota určující, zda je vyžadována přesná shoda.
blízká shoda (PRAVDA, 1 nebo vynecháno): Pokud nenastane přesná shoda, bude vybrán řádek s nejvyšší hodnotou levý-sloupec, která je menší nebo rovna hledané hodnotě. Použijete-li metodu blízká shoda, nelze v argumentu hledaná-hodnota použít zástupné znaky.
přesná shoda (NEPRAVDA nebo 0): Pokud nenastane přesná shoda, vrátí se chyba. Použijete-li metodu přesná shoda, můžete v argumentu hledaná-hodnota použít zástupné znaky. Můžete použít zástupný znak ? (otazník) k zastoupení jednoho znaku, * (hvězdička) k zastoupení více znaků a ~ (vlnovka), která určí, že následující znak se má shodovat (nemá být použit jako zástupný znak). Výraz REGEX lze ve funkci VLOOKUP použít jen pro přesnou shodu.
Poznámky
Funkce VLOOKUP porovnává hledanou hodnotu s hodnotami ve sloupci, který se nachází v zadané skupině buněk nejvíce vlevo. Pokud není vyžadována přesná shoda, bude vybrán řádek, v němž se nachází nejvyšší hodnota levý-sloupec, která je menší nebo rovna hledané hodnotě. Poté bude funkcí vrácena hodnota příslušného sloupce v tomto řádku. Pokud je vyžadována přesná shoda a žádná z hodnot první-sloupec-vlevo neodpovídá hledané hodnotě, funkce vrátí chybu.
Příklady |
---|
Máme následující tabulku: |
A | B | C | D | |
---|---|---|---|---|
1 | 0 | A | lorem | 1 |
2 | 20 | E | ipsum | 2 |
3 | 40 | I | dolor | 3 |
4 | 60 | O | sit | 4 |
5 | 80 | U | amet | 5 |
Vzorec =VLOOKUP(20; A1:D5; 2) vrátí hodnotu „E“, protože tato hodnota se nachází na stejném řádku jako hodnota 20 (hledaná-hodnota) a zároveň je v rámci zadané skupiny buněk (rozmezí-sloupců) umístěna v druhém sloupci (sloupec). Vzorec =VLOOKUP(39; A1:D5; 2) vrátí hodnotu „E“, protože tato hodnota se nachází na stejném řádku jako hodnota 20 (nejbližší nalezená hodnota, která není větší než zadaná hodnota 39) a přitom je umístěna ve druhém sloupci zadané skupiny buněk. Vzorec =VLOOKUP(„M“; B1:D5; 2) vrátí hodnotu „dolor“, protože tato hodnota se nachází na stejném řádku jako hodnota „I“ (nejbližší nalezená hodnota, která není větší než zadaná hodnota „M“) a přitom je umístěna ve druhém sloupci zadané skupiny buněk (což je sloupec C, protože jako první sloupec byl zadán sloupec B). Vzorec =VLOOKUP(„C“; B1:D5; 2) vrátí hodnotu „lorem“, protože tato hodnota se nachází na stejném řádku jako hodnota „A“ (což je nejbližší shoda, která není větší než zadaná hodnota „C“) a je umístěna ve druhém sloupci určené skupiny buněk. Vzorec =VLOOKUP(„blandit“; C1:D5; 2) vrátí hodnotu 5, protože tato hodnota se nachází na stejném řádku jako hodnota „amet“ (což je poslední hodnota v zadané oblasti, protože hodnota „blandit“ nebyla nalezena) a zároveň je umístěna ve druhém sloupci zadané skupiny buněk. Vzorec =VLOOKUP(„C“; B1:D5; 3; PRAVDA) vrátí hodnotu 1, protože tato hodnota se nachází na stejném řádku jako hodnota „A“ (což je nejbližší nalezená hodnota, která není větší než zadaná hodnota „C“) a je umístěna ve třetím sloupci zadané skupiny buněk. Vzorec =VLOOKUP(„C“; B1:D5; 3; NEPRAVDA) vrátí chybu, protože hodnotu „C“ nelze nalézt (neexistuje přesná shoda) a pro argument blízká shoda byla zadána hodnota NEPRAVDA (vrátit chybu, pokud není nalezena přesná shoda). Vzorec =VLOOKUP(„C“; B1:D5; 4; PRAVDA) vrátí chybu, protože zadaná skupina buněk obsahuje pouze tři sloupce (čtvrtý sloupec neexistuje). Vzorec =VLOOKUP(REGEX("^a.*"); C1:D5; 2; NEPRAVDA) vrátí hodnotu 5, protože tato hodnota se nachází ve stejném řádku jako slovo „amet“, což je první slovo z rozmezí C1:D5 začínající písmenem „a“. |