Tip: Zkuste použít novou funkci XLOOKUP, což je vylepšená verze funkce VLOOKUP, 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.
Funkci SVYHLEDAT použijte, když potřebujete najít položky v tabulce nebo oblasti po řádech. Můžete například vyhledat cenu automobilového dílu podle čísla dílu nebo najít jméno zaměstnance na základě ID zaměstnance.
V nejjednodušší podobě funkce SVYHLEDAT říká:
=SVYHLEDAT(Co chcete vyhledat, kde to chcete vyhledat, čí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/PRAVDA nebo 0/NEPRAVDA).
Tip: Tajným kódem funkce SVYHLEDAT je uspořádání dat tak, aby hledaná hodnota (Ovoce) byla nalevo od hodnoty vrácení (Částka), kterou chcete najít.
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 o klientovi'! A:F,3,FALSE)
Název argumentu |
Popis |
---|---|
hledat (povinné) |
Hodnota, kterou chcete vyhledat. Hodnota, kterou chcete vyhledat, musí být v prvním sloupci oblasti buněk, kterou zadáte v argumentu table_array . Pokud například pole tabulky pokrývá buňky B2:D7, musí být lookup_value ve sloupci B. Hledat může být hodnota nebo odkaz na buňku. |
tabulka (povinné) |
Oblast buněk, ve které bude funkce SVYHLEDAT hledat hodnotu hledat a ze které bude vracet hodnotu. Můžete použít pojmenovanou oblast nebo tabulku a v argumentu můžete místo odkazů na buňky použít názvy. První sloupec v oblasti buněk musí obsahovat lookup_value. Oblast buněk musí také obsahovat vrácenou hodnotu, kterou chcete najít. Podívejte se, jak vybrat oblast v listu. |
sloupec (povinné) |
Číslo sloupce (počínaje číslem 1 pro sloupec table_array úplně vlevo), který obsahuje vrácenou hodnotu. |
typ (volitelné) |
Jedná se o logickou hodnotu, která určuje, jestli má funkce SVYHLEDAT najít přibližnou nebo přesnou hodnotu:
|
Jak začít
K sestavení syntaxe pro funkci SVYHLEDAT budete potřebovat 4 informace:
-
Hodnota, kterou chcete vyhledat, označovaná taky jako vyhledávací hodnota.
-
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.
-
Číslo sloupce v oblasti, ve kterém je hodnota, která se má vrátit. Pokud například jako oblast zadáte B2:D11, měli byste počítat B jako první sloupec, C jako druhý sloupec atd.
-
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(hledaná hodnota, oblast obsahující hledanou hodnotu, číslo sloupce v oblasti obsahující vrácenou hodnotu, Přibližná shoda (PRAVDA) nebo Přesná shoda (NEPRAVDA)).
Příklady
Tady je několik příkladů funkce SVYHLEDAT:
Příklad 1
Příklad 2
Příklad 3
Příklad 4
Příklad 5
Pomocí funkce SVYHLEDAT můžete zkombinovat více tabulek do jedné, pokud má jedna z tabulek pole společná se všemi ostatními. To může být užitečné zejména v případě, že potřebujete sdílet sešit s lidmi, kteří mají starší verze Excelu, které nepodporují datové funkce s více tabulkami jako zdroje dat – když zkombinujete zdroje dat do jedné tabulky a změníte zdroj dat funkce dat na novou tabulku, můžete tuto funkci dat použít ve starších verzích Excelu (za předpokladu, že samotná datová funkce je podporována starší verzí).
Sloupce A–F a H tady obsahují hodnoty nebo vzorce, které používají pouze hodnoty na listu, a ostatní sloupce používají funkci SVYHLEDAT a hodnoty sloupců A (Kód klienta) a sloupce B (Advokát) k získání dat z jiných tabulek. |
-
Zkopírujte tabulku, která obsahuje společná pole, do nového listu a pojmenujte ji.
-
Kliknutím na Datové > Datové nástroje > Relace otevřete dialogové okno Správa relací.
-
U každé uvedené relace mějte na paměti následující:
-
Pole, které propojuje tabulky (uvedené v závorkách v dialogovém okně). Toto je lookup_value pro vzorec FUNKCE SVYHLEDAT.
-
Název související vyhledávací tabulky. Toto je table_array ve vzorci FUNKCE SVYHLEDAT.
-
Pole (sloupec) v související vyhledávací tabulce, které obsahuje požadovaná data v novém sloupci. Tyto informace se nezobrazují v dialogovém okně Správa relací – budete se muset podívat na související vyhledávací tabulku, abyste zjistili, které pole chcete načíst. Chcete si poznamenat číslo sloupce (A=1) – toto je col_index_num ve vzorci.
-
-
Pokud chcete přidat pole do nové tabulky, zadejte vzorec FUNKCE SVYHLEDAT do prvního prázdného sloupce pomocí informací, které jste získali v kroku 3.
V našem příkladu používá sloupec G právník ( lookup_value) k získání dat fakturační sazby ze čtvrtého sloupce (col_index_num = 4) z tabulky listu Advokáti tblAttorneys ( table_array) se vzorcem =SVYHLEDAT([@Attorney],tbl_Attorneys;4;NEPRAVDA)).
Vzorec může také používat odkaz na buňku a odkaz na oblast. V našem příkladu by to bylo =SVYHLEDAT(A2;'Advokáti'! A:D,4,FALSE).
-
Pokračujte v přidávání polí, dokud nebudete mít všechna pole, která potřebujete. Pokud se pokoušíte připravit sešit obsahující datové funkce, které používají více tabulek, změňte zdroj dat funkce dat na novou tabulku.
Problém |
Co je špatně |
---|---|
Nesprávná vrácená hodnota |
Pokud má argument Typ hodnotu PRAVDA nebo pokud 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 |
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, získáte #REF. chybovou hodnotu #HODNOTA!. Další informace o řešení #REF! v části SVYHLEDAT, viz Jak opravit chybu #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 #HODNOTA! u funkce SVYHLEDAT. |
Chyba #NÁZEV? v buňce |
Chybová hodnota #NÁZEV? 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 #NAME!.. |
#PŘESAH! v buňce |
Tato konkrétní chyba #SPILL! obvykle znamená, že vzorec spoléhá na implicitní průnik vyhledávací hodnoty a jako odkaz používá celý sloupec. Například =SVYHLEDAT(A:A;A;A:C;2;NEPRAVDA). Problém můžete vyřešit ukotvením odkazu vyhledávání pomocí operátoru @, například: =SVYHLEDAT(@A:A;A:C;2;NEPRAVDA). Případně můžete použít tradiční metodu SVYHLEDAT a místo celého sloupce odkazovat na jednu buňku: =SVYHLEDAT(A2;A:C;2;NEPRAVDA). |
Udělejte toto |
Proč? |
---|---|
Používejte pro argument Typ absolutní odkazy. |
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, jestli nejsou údaje v prvním sloupci oblasti Tabulka 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. |
Než pro argument typ funkce SVYHLEDAT nastavíte hodnotu PRAVDA, seřaďte si první sloupec v tabulce. |
Používejte zástupné znaky. |
Pokud range_lookup false a lookup_value 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 =SVYHLEDAT("Fontan?";B2:E7;2;FALSE) vyhledá všechny výskyty 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 ( ‘ nebo “) 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 komunity Excel Tech nebo získat podporu v komunitách.
Viz také
Video: Kdy a jak používat funkci SVYHLEDAT
Stručná referenční karta: Funkce SVYHLEDAT – shrnutí
Jak opravit chybu #NENÍ_K_DISPOZICI u funkce SVYHLEDAT
Vyhledávání hodnot pomocí funkce SVYHLEDAT, INDEX nebo POZVYHLEDAT