V tomto článku sa popisuje syntax vzorca a používanie funkcie SEARCH v Microsoft Exceli.
Popis
Funkcia SEARCH vyhľadá jeden textový reťazec vo vnútri druhého textového reťazca a vráti počiatočnú pozíciu prvého textového reťazca od prvého znaku druhého textového reťazca. Ak napríklad chcete vyhľadať umiestnenie písmena r v slove tlačiareň, môžete použiť nasledujúcu funkciu:
=SEARCH("r";"tlačiareň")
Funkcia vráti hodnotu 7, pretože znak r je siedmym znakom v slove tlačiareň.
Môžete vyhľadávať aj slová v iných slovách. Napríklad funkcia
=SEARCH("báza";"databáza")
vráti hodnotu 5, pretože slovo báza začína piatym písmenom slova databáza. Funkciu SEARCH môžete použiť na zistenie umiestnenia znaku alebo textového reťazca v rámci iného textového reťazca a potom použiť funkciu MID na vrátenie textu alebo použiť funkciu REPLACE na zmenu textu. Ukážka týchto funkcií sa nachádza v príklade číslo 1.
Syntax
SEARCH(nájsť_text;v_texte;[pozícia_začiatku])
Funkcia SEARCH obsahuje nasledovné argumenty:
- find_text Povinné. Text, ktorý chcete vyhľadať.
- within_text Povinné. Text, v ktorom chcete hľadať hodnotu argumentu find_text .
- start_num Voliteľný argument. Číslo znaku v argumente within_text , od ktorého chcete začať hľadať.
Poznámka
- Funkcia SEARCH nerozlišuje veľké a malé písmená. Ak chcete, aby sa pri vyhľadávaní rozlišovali malé a veľké písmená, môžete použiť funkciu FIND.
- V argumente find_text môžete použiť zástupné znaky – otáznik (?) a hviezdičku (*). Otáznik znamená ľubovoľný znak a hviezdička znamená ľubovoľnú postupnosť znakov. Ak chcete vyhľadať skutočný otáznik alebo hviezdičku, zadajte pred znakom vlnovku (~).
- Ak sa hodnota find_text nenájde, #VALUE! vráti sa chybová hodnota.
- Ak sa argument start_num vynechá, predpokladá sa, že má hodnotu 1.
- Ak start_num nie je väčšie ako 0 (nula) alebo je väčšie ako dĺžka argumentu within_text , #VALUE! vráti sa chybová hodnota.
- Pomocou start_num môžete preskočiť zadaný počet znakov. Napríklad pri použití funkcie SEARCH predpokladajme, že pracujete s textovým reťazcom „AYF0093.YoungMensApparel“. Ak chcete vyhľadať prvý znak "Y" v popisnej časti textového reťazca, nastavte start_num hodnotu 8, aby sa neprehľadávala časť textu týkajúca sa poradového čísla (v tomto prípade "AYF0093"). Funkcia SEARCH spustí operáciu vyhľadávania na ôsmom znaku, nájde znak zadaný v argumente find_text na ďalšej pozícii a vráti číslo 9. Funkcia SEARCH vždy vráti počet znakov od začiatku argumentu within_text a započíta preskočené znaky, ak je argument start_num väčší ako 1.
Príklady
Vzorové údaje skopírujte do nasledujúcej tabuľky a prilepte ich do bunky A1 nového excelového hárka. Ak chcete, aby vzorce zobrazovali výsledky, označte ich, stlačte kláves F2 a potom stlačte kláves Enter. V prípade potreby môžete upraviť šírku stĺpcov, aby sa údaje zobrazovali celé.
| Údaje | ||
|---|---|---|
| Výpisy | ||
| Marža zisku | ||
| marža | ||
| „Šéf“ je tu. | ||
| Vzorec | Popis | Výsledok |
| =SEARCH("p";A2;2) | Pozícia prvého znaku p v reťazci v bunke A2 od druhého znaku. | 7 |
| =SEARCH(A4;A3) | Pozícia slova marža (reťazec, ktorý sa má vyhľadať, je v bunke A4) v reťazci Marža zisku (bunka, v ktorej sa má vyhľadať, je bunka A3). | 8 |
| =REPLACE(A3;SEARCH(A4;A3);1;"výška") | Nahradí slovo marža slovom výška. Najskôr vyhľadá umiestnenie slova marža v bunke A3 a potom daný znak a ďalšie štyri znaky za ním nahradí reťazcom výška. | výška zisku |
| =MID(A3;SEARCH(" ";A3)+1;4) | Vráti prvé štyri znaky, ktoré nasledujú po prvej medzere v reťazci Marža zisku (bunka A3). | zisk |
| =SEARCH("""";A5) | Pozícia prvých dvojitých úvodzoviek (") v bunke A5. | 5 |
| =MID(A5;SEARCH("""";A5)+1;SEARCH("""";A5;SEARCH("""";A5)+1)-SEARCH("""";A5)-1) | Vráti len text uzavretý dvojitými úvodzovkami v bunke A5. | šéf |
Dôležité
- Funkcia SEARCHB už nefunguje.
- V zošitoch nastavených na verziu kompatibility 2 má funkcia SEARCH vylepšené správanie náhradných párov a počíta ich ako jeden znak namiesto dvoch. Selektory variácií (bežne používané spolu s emoji) sa budú naďalej počítať ako samostatné znaky. Ďalšie informácie nájdete tu: Štandard Unicode