Tento článek popisuje syntaxi vzorce a použití funkcí HLEDAT a SEARCHB v Microsoft Excelu.

Popis

Funkce HLEDAT a SEARCHB vyhledají jeden textový řetězec v rámci druhého textového řetězce a vrátí číslo počáteční pozice prvního textového řetězce od prvního znaku druhého textového řetězce. Chcete-li například najít pozici písmene „k“ ve slově „tiskárna“, můžete použít následující funkci:

=HLEDAT ("k","tiskárna")

Tato funkce vrátí hodnotu 4, protože „k“ je čtvrtý znak ve slově „tiskárna“.

Můžete také hledat části slov v rámci celých slov. Například funkce

=HLEDAT("báze","databáze")

vrátí hodnotu 5, protože řetězec „báze“ začíná na pátém znaku slova „databáze“. Pomocí funkcí HLEDAT a SEARCHB můžete zjistit umístění určitého znaku nebo textového řetězce v rámci jiného textového řetězce a potom můžete pomocí funkcí ČÁST a MIDB vrátit daný text nebo pomocí funkcí NAHRADIT a NAHRADITB text změnit. Ukázku těchto funkcí najdete v tomto článku v části Příklad 1.

Důležité informace: 

  • Tyto funkce nemusí být v některých jazycích dostupné.

  • Pokud je jako výchozí jazyk nastaven jazyk podporující znakovou sadu DBCS, počítá funkce SEARCHB na každý znak 2 bajty. V opačném případě se funkce SEARCHB chová stejně jako funkce HLEDAT – počítá na každý znak 1 bajt.

Mezi jazyky podporující znakovou sadu DBCS patří japonština, čínština (zjednodušená), čínština (tradiční) a korejština.

Syntaxe

HLEDAT(co,kde,[start])

SEARCHB(co,kde,[start])

Syntaxe funkcí HLEDAT a SEARCHB má následující argumenty:

  • Co:    Povinný argument. Jedná se o text, který chcete najít.

  • Kde:    Povinný argument. Jedná se o text, ve kterém chcete najít hodnotu argumentu co.

  • Start:    Nepovinný argument. Jedná se o číslo znaku v argumentu kde, od kterého má hledání začít.

Poznámka

  • Funkce HLEDAT a SEARCHB nerozlišují malá a velká písmena. Pokud chcete při hledání rozlišovat malá a velká písmena, můžete použít funkce NAJÍT a FINDB.

  • V argumentu co lze používat zástupné znaky – otazník (?) a hvězdičku (*). Otazník zastupuje libovolný jeden znak a hvězdička zastupuje libovolný řetězec znaků. Chcete-li vyhledat skutečný znak otazníku nebo hvězdičky, zadejte před něj tildu (~).

  • Pokud se hodnota find_text nenajde, #VALUE! vrátí se chybová hodnota.

  • Pokud není argument start uveden, předpokládá se hodnota 1.

  • Pokud start_num není větší než 0 (nula) nebo je větší než délka argumentu within_text , #VALUE! vrátí se chybová hodnota.

  • Pomocí start_num přeskočíte zadaný počet znaků. Použití funkce SEARCH jako příklad předpokládejme, že pracujete s textovým řetězcem "AYF0093. YoungMensApparel". Pokud chcete najít pozici prvního "Y" v popisné části textového řetězce, nastavte start_num rovnou 8, aby se neprohledali část textu s pořadovým číslem (v tomto případě "AYF0093"). Funkce SEARCH spustí operaci hledání na pozici osmého znaku, najde znak zadaný v argumentu find_text na další pozici a vrátí číslo 9. Funkce SEARCH vždy vrátí počet znaků od začátku argumentu within_text a počítá znaky, které přeskočíte, pokud je argument start_num větší než 1.

Příklady

Zkopírujte vzorová data v následující tabulce a vložte je do buňky A1 nového excelového sešitu. Aby vzorce zobrazily výsledky, vyberte je, stiskněte F2 a potom stiskněte Enter. Pokud potřebujete, můžete přizpůsobit šířky sloupců a zobrazit si všechna data.

Data

Výkazy

hrubá sazba

sazba

Náš "šéf" je zde.

Vzorec

Popis

Výsledek

=HLEDAT("z";A2;4)

Pozice prvního znaku „z“ v řetězci v buňce A2 s počátkem hledání od čtvrté pozice

7

=HLEDAT(A4;A3)

Pozice slova sazba (hledaný řetězec je v buňce A4) v řetězci hrubá sazba (hledá se v buňce A3)

8

=NAHRADIT(A3;HLEDAT(A4;A3);5;"tržba")

Nahradí slovo sazba slovem tržba. Nejprve vyhledá pozici slova sazba v buňce A3 a potom nahradí pět znaků počínaje nalezenou pozicí slovem tržba.

hrubá tržba

=ČÁST(A3;HLEDAT(" ";A3)+1;4)

Vrátí první čtyři znaky, které následují za první mezerou v řetězci hrubá sazba (teda v buňce A3).

sazb

=HLEDAT("""";A5)

Pozice prvního znaku uvozovek (") v buňce A5

5

=ČÁST(A5;HLEDAT("""";A5)+1;HLEDAT("""";A5;HLEDAT("""";A5)+1)-HLEDAT("""";A5)-1)

Vrátí jenom text, který je v buňce A5 uzavřený v uvozovkách.

šéf

Potřebujete další pomoc?

Chcete další možnosti?

Prozkoumejte výhody předplatného, projděte si školicí kurzy, zjistěte, jak zabezpečit své zařízení a mnohem více.

Komunity vám pomohou klást otázky a odpovídat na ně, poskytovat zpětnou vazbu a vyslechnout odborníky s bohatými znalostmi.