
Obecný vzorec
=VLOOKUP(val&"",table,col,0)
souhrn
Chcete-li použít funkci VLOOKUP k načtení informací z tabulky, kde klíčovými hodnotami jsou čísla uložená jako text, můžete použít vzorec, který zřetězí prázdný řetězec ("") na hodnotu číselného vyhledávání a přenese ji na text. V zobrazeném příkladu je vzorec v H3:
=VLOOKUP(id&"",planets,2,0) // returns "Earth"
kde id (H2) a planety (B3: B11) jsou pojmenovány rozsahy.
Poznámka: Příklad je řešením problému neodpovídajících čísel a textu, které způsobují chybu # N / A. Pokud nedojde k nesouladu, řešení není nutné a můžete použít normální vzorec VLOOKUP.
Vysvětlení
Běžnou chybou VLOOKUP je nesoulad mezi čísly a textem. Nejčastěji vyhledávací sloupec v tabulce obsahuje číselné hodnoty, které vypadají jako čísla, ale ve skutečnosti jsou čísla uložená jako text. Když je skutečné číslo předáno do VLOOKUP jako první argument, vrátí vzorec chybu # N / A, i když se zdá, že existuje shoda. Na obrazovce níže je uveden příklad tohoto problému:
Čísla ve sloupci B jsou ve skutečnosti text, takže numerická vyhledávací hodnota, 3, selže, i když se zdá, že VLOOKUP by měl odpovídat B5 a vrátit „Zemi“. Číslo můžete zadat jako textovou hodnotu tak, že před něj uvedete jednoduchou uvozovku (').
Nejlepším řešením je zajistit, aby vyhledávací hodnoty v tabulce byly skutečně čísla. Pokud však nemáte nad tabulkou kontrolu, můžete upravit vzorec VLOOKUP tak, aby vynutil vyhledávací hodnotu tak, aby odpovídala typu v tabulce. V zobrazeném příkladu převedeme numerickou hodnotu vyhledávání na text zřetězením prázdného řetězce:
=VLOOKUP(id,planets,2,0) // original =VLOOKUP(id&"",planets,2,0) // revised
O chybu se postará revidovaný vzorec:
Totéž můžete udělat s delším vzorcem, který k převodu čísla na text využívá funkci TEXT:
=VLOOKUP(TEXT(id,"@"),planets,2,0)
Čísla i text
Pokud si nemůžete být jisti, kdy budete mít čísla a kdy budete mít text, můžete obě možnosti uspokojit zabalením funkce VLOOKUP do funkce IFERROR a použitím vzorce, který zpracovává oba případy:
=IFERROR(VLOOKUP(id,planets,3,0),VLOOKUP(id&"",planets,3,0))
Zde nejprve vyzkoušíme normální vzorec VLOOKUP, který předpokládá, že vyhledávací hodnota a první sloupec v tabulkách jsou čísla. Pokud to vyvolá chybu, zkusíme to znovu s upraveným vzorcem. Pokud tento vzorec také selže, vrátí funkce VLOOKUP jako vždy chybu # N / A.