SVYHLEDAT

Platí pro
Excel pro Microsoft 365 Excel pro Microsoft 365 pro Mac Excel 2024 Excel 2024 pro Mac Excel 2021 Excel 2021 pro Mac Excel 2019 Excel 2016

Tip:

Zkuste použít novou funkci XVYHLEDAT, což je vylepšená verze funkce SVYHLEDAT, která funguje v libovolném směru a ve výchozím nastavení vrací přesné shody, což zaručuje snadnější a pohodlnější používání, než jeho předchůdce.

SVYHLEDAT použijte, když potřebujete něco najít v tabulce nebo v oblasti buněk podle řádku. Podívejte se například na hodnotu automobilové části podle čísla dílu nebo najděte jméno zaměstnance na základě jeho ID zaměstnance.

V nejjednodušší podobě funkce SVYHLEDAT říká:

=SVYHLEDAT(Co chcete vyhledat, kde ho chcete hledat, číslo sloupce v oblasti obsahující hodnotu, která se má vrátit, vrátit přibližnou nebo přesnou shodu – označenou jako 1/TRUE nebo 0/FALSE).

Tip:

  • Zásadní je pro použití funkce SVYHLEDAT uspořádat data tak, aby hodnota, kterou budete hledat (ovoce), byla nalevo od vracené hodnoty (částka), která se má najít.
  • Pokud jste předplatitelem Microsoft Copilot, Copilot vám může ještě více usnadnit vkládání a používání funkcí SVYHLEDAT nebo XLOOKUP. Viz Získání přehledů dat pomocí Copilotu v Excelu.

Technické podrobnosti

Funkce SVYHLEDAT se používá k vyhledání hodnoty v tabulce.

Syntaxe

SVYHLEDAT(hledat;tabulka;sloupec;[typ])

Příklady:

  • =SVYHLEDAT(A2,A10:C20,2,PRAVDA)
  • =SVYHLEDAT("Hernady";B2:E7;2;NEPRAVDA)
  • =SVYHLEDAT(A2,'Podrobnosti klienta'!A:F,3,FALSE)
Název argumentu Popis
hledat (povinné) Hodnota, kterou chcete vyhledat. Hodnota, kterou chcete vyhledat, musí být hodnota v prvním sloupci oblasti buněk, kterou zadáte v argumentu table_array .
Pokud například pole tabulky zahrnuje buňky B2:D7, pak musí být vaše lookup_value ve sloupci B.
Lookup_value může být hodnota nebo odkaz na buňku.
tabulka (povinné) Oblast buněk, ve které bude funkce SVYHLEDAT hledat lookup_value a vrácenou hodnotu. Můžete použít pojmenovanou oblast nebo tabulku a místo odkazů na buňky můžete v argumentu použít názvy.
První sloupec v oblasti buněk musí obsahovat lookup_value. Oblast buněk musí také obsahovat návratovou hodnotu, kterou chcete najít.
sloupec (povinné) Číslo sloupce (počínaje číslem 1 ve sloupci table_array úplně vlevo), ve kterém je hodnota, která se má vrátit.
typ (volitelné) Jedná se o logickou hodnotu, která určuje, jestli má funkce SVYHLEDAT najít přibližnou nebo přesnou hodnotu:
  • Přibližná shoda – 1/TRUE předpokládá, že první sloupec v tabulce je seřazený buď číselně, nebo abecedně, a pak vyhledá nejbližší hodnotu. Tento způsob se použije jako výchozí, pokud žádný nezadáte. Například =SVYHLEDAT(90;A1:B100;2;TRUE).
  • Přesná shoda – 0/FALSE vyhledá přesnou hodnotu v prvním sloupci. Například =SVYHLEDAT("Smith",A1:B100,2,FALSE).

Jak začít

K sestavení syntaxe pro funkci SVYHLEDAT budete potřebovat 4 informace:

  1. Hodnota, kterou chcete vyhledat, označovaná taky jako vyhledávací hodnota.
  2. Oblast, ve které se nachází vyhledávací hodnota. Mějte na paměti, že aby funkce SVYHLEDAT správně fungovala, měla by vyhledávací hodnota být vždycky v prvním sloupci oblasti. Pokud je vyhledávací hodnota třeba v buňce C2, měla by oblast začínat sloupcem C.
  3. Číslo sloupce v oblasti, ve kterém je hodnota, která se má vrátit. Pokud jako oblast zadáte třeba B2:D11, měli byste počítat B jako první sloupec, C jako druhý sloupec a tak dále.
  4. Volitelně můžete zadat PRAVDA v případě, že požadujete přibližnou shodu, nebo NEPRAVDA v případě, že požadujete přesnou shodu hodnoty, která se má vrátit. Pokud žádnou z těchto hodnot nezadáte, bude výchozí hodnotou PRAVDA, tedy přibližná shoda.

Teď dáme vše nahoře uvedené dohromady:

=SVYHLEDAT(vyhledávací hodnota, oblast obsahující vyhledávací hodnotu, číslo sloupce v oblasti obsahující návratovou hodnotu, přibližná shoda (TRUE) nebo přesná shoda (FALSE)).

Příklady

Tady je několik příkladů funkce SVYHLEDAT:

Příklad 1

=SVYHLEDAT (B3;B2:E7;2;NEPRAVDA) Funkce SVYHLEDAT vyhledá Fontana v prvním sloupci (sloupec B) v table_array B2:E7 a vrátí Olivier z druhého sloupce (sloupec C) v table_array. Funkce False vrátí přesnou shodu.

Příklad 2

=SVYHLEDAT (102;A2:C7;2;NEPRAVDA) Funkce SVYHLEDAT hledá přesnou shodu (NEPRAVDA) příjmení pro 102 (lookup_value) ve druhém sloupci (sloupec B) v oblasti A2:C7 a vrátí hodnotu Fontana.

Příklad 3

=KDYŽ(SVYHLEDAT(103;A1:E7;2;NEPRAVDA)=Souse;Nalezeno;Nenalezeno) Funkce KDYŽ zkontroluje, jestli funkce SVYHLEDAT vrátí Souse jako příjmení zaměstnance odpovídajícího hodnotě 103 (lookup_value) v buňkách A1:E7 (table_array). Vzhledem k tomu, že příjmení odpovídající hodnotě 103 je Leal, podmínka KDYŽ je nepravda a zobrazí se nenalezeno.

Příklad 4

=INT(YEARFRAC(DATUM(2014;6;30);SVYHLEDAT(105;A2:E7;5;NULA);1)) Funkce SVYHLEDAT hledá datum narození zaměstnance odpovídajícího hodnotě 109 (lookup_value) v rozsahu A2:E7 (table_array) a vrátí 03/04/1955. Funkce YEARFRAC pak odečte toto datum narození od 30. 6. 2014 a vrátí hodnotu, která se pak převede funkcí INY na celé číslo 59.

Příklad 5

KDYŽ(ISNA(SVYHLEDAT(105;A2:E7;2;NEPRAVDA))=PRAVDA;Zaměstnanec nenalezen;SVYHLEDAT(105;A2:E7;2;NEPRAVDA)) Funkce KDYŽ zkontroluje, jestli funkce SVYHLEDAT vrátí hodnotu příjmení ze sloupce B pro 105 (lookup_value). Pokud funkce SVYHLEDAT najde příjmení, funkce KDYŽ zobrazí příjmení, jinak funkce KDYŽ vrátí hodnotu Zaměstnanec nebyl nalezen. JE.NEDEF zajistí, že pokud funkce SVYHLEDAT vrátí #N/A, nahradí se chyba hodnotou Zaměstnanec nebyl nalezen místo #N/A. V tomto příkladu je návratovou hodnotou Burke, což je příjmení odpovídající 105.

Běžné problémy

Problém Co je špatně
Nesprávná vrácená hodnota Pokud má range_lookup hodnotu PRAVDA nebo se vynechá, první sloupec musí být seřazený abecedně nebo číselně. Pokud první sloupec seřazený není, může se vrátit neočekávaná hodnota. Buď první sloupec seřaďte, nebo použijte hodnotu NEPRAVDA pro přesnou shodu.
Chyba #NENÍ_K_DISPOZICI v buňce
  • Pokud range_lookup PRAVDA, pak v případě, že je hodnota v lookup_value menší než nejmenší hodnota v prvním sloupci table_array, získáte chybovou hodnotu #N/A.
  • Pokud range_lookup FALSE, chybová hodnota #N/A znamená, že se nenašlo přesné číslo.
Další informace o opravách chyb #NENÍ_K_DISPOZICI ve funkci SVYHLEDAT najdete v tématu Oprava chyby #NENÍ_K_DISPOZICI u funkce SVYHLEDAT.
Chyba #ODKAZ! v buňce Pokud je col_index_num větší než počet sloupců v tabulce, dostanete #REF! chybovou hodnotu #HODNOTA!.
Další informace o řešení #REF! ve funkci SVYHLEDAT, přečtěte si postup opravy chyby #REF!.
Chyba #HODNOTA! v buňce Pokud je table_array menší než 1, získáte #VALUE! chybovou hodnotu #HODNOTA!.
Další informace o opravách chyb #HODNOTA! ve funkci SVYHLEDAT najdete v tématu Oprava chyby #VALUE! u funkce SVYHLEDAT.
Chyba #NÁZEV? v buňce #NAME? obvykle vyjadřuje, že ve vzorci chybí uvozovky. Když hledáte jméno, nezapomeňte ho ve vzorci uvést do uvozovek. Třeba jméno "Hernady" zadejte takto: =SVYHLEDAT("Hernady";B2:E7;2;NEPRAVDA).
Další informace najdete v tématu Oprava chyby #NÁZEV?.
#PŘESAH! v buňce Tato konkrétní chyba #SPILL! obvykle znamená, že vzorec spoléhá na implicitní průnik pro vyhledávací hodnotu a jako odkaz používá celý sloupec. Například =SVYHLEDAT( A:A;A:C;2;NEPRAVDA). Tento problém můžete vyřešit ukotvením vyhledávacího odkazu pomocí operátoru @ takto: =SVYHLEDAT(@A:A,A:C,2,FALSE). Alternativně můžete použít tradiční metodu SVYHLEDAT a místo celého sloupce odkazovat na jednu buňku: =SVYHLEDAT(A2,A:C,2,FALSE).

Doporučené postupy

Postup Proč?
Použití absolutních odkazů pro range_lookup Když budete používat absolutní odkazy, bude se ve vzorci, který vyplníte dolů do dalších buněk, vždycky hledat ve stejné oblasti.
Naučte se používat absolutní odkazy na buňky.
Neukládejte číselné hodnoty ani hodnoty kalendářních dat jako text. Při hledání číselných nebo datových hodnot zkontrolujte, že data v prvním sloupci table_array nejsou uložená jako textové hodnoty. Jinak může funkce SVYHLEDAT vrátit nesprávnou nebo neočekávanou hodnotu.
Seřaďte si první sloupec. Před použitím funkce SVYHLEDAT seřaďte první sloupec table_array , pokud má range_lookup hodnotu PRAVDA.
Používejte zástupné znaky. Pokud je range_lookup NEPRAVDA a lookup_value je text, můžete v lookup_value použít zástupné znaky – otazník (?) a hvězdičku (*). Otazník zastupuje jeden libovolný znak. Hvězdička zastupuje jakoukoli posloupnost libovolných znaků. Pokud chcete vyhledat skutečný znak otazníku nebo hvězdičky, zadejte před ně vlnovku (~).
Například funkce =SVYHLEDAT("Fontan?",B2:E7,2,FALSE) vyhledá všechny výskyty slova Fontana s posledním písmenem, které se může lišit.
Zkontrolujte, že v údajích nemáte něco špatně napsané. Při hledání textových hodnot v prvním sloupci zkontrolujte, že údaje v prvním sloupci oblasti nemají mezery na začátku nebo konci textu, jestli se v nich konzistentně používají rovné uvozovky ( ' nebo " ) a oblé uvozovky ( ‘ or ") a jestli v nich nejsou netisknutelné znaky. V takových případech může funkce SVYHLEDAT vrátit nesprávnou nebo neočekávanou hodnotu.
Abyste dostali přesné výsledky, zkuste použít funkci VYČISTIT nebo funkci PROČISTIT k odebrání koncových mezer, které jsou v buňce za hodnotami tabulky.

Potřebujete další pomoc?

Kdykoli se můžete zeptat odborníka z technické komunity Excelu nebo získat podporu v komunitách.