Ten artykuł zawiera opis składni formuły i zastosowania funkcji SZUKAJ.TEKST w programie Microsoft Excel.
Opis
Funkcja SZUKAJ.TEKST znajduje jeden ciąg tekstowy w drugim ciągu tekstowym i zwraca numer pozycji początkowej pierwszego ciągu tekstowego od pierwszego znaku drugiego ciągu tekstowego. Aby na przykład stwierdzić, na której pozycji w wyrazie „drukarka” znajduje się litera „u”, można użyć następującej funkcji:
=SZUKAJ.TEKST("u";"drukarka")
Ta funkcja zwraca wartość 3, ponieważ „u” to trzecia litera w wyrazie „drukarka”.
Za pomocą tej funkcji można również wyszukiwać wyrazy w innych wyrazach. Na przykład funkcja
=SZUKAJ.TEKST("wizja";"telewizja")
zwraca 5, ponieważ wyraz „wizja” rozpoczyna się od piątego znaku wyrazu „telewizja”. Funkcja SZUKAJ.TEKST służy do określania lokalizacji znaku lub ciągu tekstowego w innym ciągu tekstowym, a następnie zwracania tekstu za pomocą funkcji FRAGMENT.TEKSTU lub zmieniania tekstu za pomocą funkcji ZASTĄP. Te funkcje zostały przedstawiane w Przykładzie 1 w tym artykule.
Składnia
SZUKAJ.TEKST(tekst_szukany;w_tekście;[nr_poz_pocz])
Funkcja SZUKAJ.TEKST ma następujące argumenty:
-
Tekst_szukany Argument wymagany. Jest to tekst, który ma zostać znaleziony.
-
W_tekście Argument wymagany. Jest to tekst, w którym ma zostać znaleziony tekst_szukany.
-
Nr_poz_pocz Argument opcjonalny. Jest to numer znaku w argumencie w_tekście, od którego ma zostać rozpoczęte przeszukiwanie.
Spostrzeżenie
-
W funkcji SZUKAJ.TEKST nie jest uwzględniana wielkość liter. Jeśli chcesz wyszukać wielkość liter, możesz użyć funkcji ZNAJDŹ.
-
Przy określaniu argumentu tekst_szukany można używać znaków wieloznacznych: znaku zapytania (?) i gwiazdki (*). Znak zapytania odpowiada dowolnemu znakowi, a gwiazdka dowolnej sekwencji znaków. Aby znaleźć znak zapytania lub gwiazdkę, przed szukanym znakiem należy wpisać tyldę (~).
-
Jeśli wartość argumentu tekst_szukany nie zostanie znaleziona, funkcja zwróci wartość błędu #VALUE!.
-
Jeśli argument nr_poz_pocz zostanie pominięty, przyjmuje się, że jest równy 1.
-
Jeśli wartość argumentu numer_początkowy nie jest większa niż 0 (zero) lub jest większa niż długość argumentu w_tekście, funkcja zwróci wartość błędu #VALUE!.
-
Dzięki argumentowi nr_poz_pocz można pomijać określoną liczbę znaków. Załóżmy na przykład, że jest przetwarzany następujący tekst: „AUM0093.UbraniaMęskieMłodzieżowe”. Aby odnaleźć pozycję pierwszego znaku „U” w opisowej części tekstu, należy nadać argumentowi nr_poz_pocz wartość 8, tak aby nie była przeszukiwana część tekstu będąca numerem seryjnym (w tym przypadku „AUM0093”). Funkcja SZUKAJ.TEKST rozpoczyna wyszukiwanie od znaku na pozycji 8, odnajduje argument tekst_szukany przy następnym znaku i zwraca liczbę 9. Funkcja SZUKAJ.TEKST zawsze zwraca liczbę znaków względem początku argumentu w_tekście, łącznie ze znakami pominiętymi w przypadku, gdy argument nr_poz_pocz jest większy niż 1.
Przykłady
Skopiuj przykładowe dane z poniższej tabeli i wklej je w komórce A1 nowego arkusza programu Excel. Aby formuły wyświetlały wyniki, zaznacz je, naciśnij klawisz F2, a następnie naciśnij klawisz Enter. Jeśli to konieczne, możesz dostosować szerokości kolumn, aby wyświetlić pełne dane.
Dane |
||
---|---|---|
Zestawienia |
||
Marża zysku |
||
marża |
||
Dziś "szef" jest w firmie. |
||
Formuła |
Opis |
Wynik |
=SZUKAJ.TEKST("e";A2;6) |
Pozycja pierwszej litery „e” w ciągu zawartym w komórce A2, zaczynając od szóstego znaku. |
7 |
=SZUKAJ.TEKST(A4;A3) |
Pozycja wyrazu „marża” (wyszukiwany ciąg umieszczony w komórce A4) w ciągu „Marża zysku” (komórka A3, w której znajduje się ciąg do przeszukania). |
8 |
=ZASTĄP(A3;SZUKAJ.TEKST(A4;A3);5;"Kwota") |
Zamienia ciąg „Marża” na ciąg „Kwota”, najpierw szukając pozycji ciągu „Marża” w komórce A3, a następnie zamieniając pierwszy znak i kolejne cztery znaki ciągiem „Kwota”. |
Kwota zysku |
=FRAGMENT.TEKSTU(A3;SZUKAJ.TEKST(" ";A3)+1;4) |
Zwraca cztery pierwsze znaki występujące po pierwszej spacji w ciągu „Marża zysku” (komórka A3). |
zysk |
=SZUKAJ.TEKST("""";A5) |
Pozycja pierwszego podwójnego znaku cudzysłowu ('') w komórce A5. |
5 |
=FRAGMENT.TEKSTU(A5;SZUKAJ.TEKST("""";A5)+1;SZUKAJ.TEKST("""";A5;SZUKAJ.TEKST("""";A5)+1)-SZUKAJ.TEKST("""";A5)-1) |
Zwraca tylko tekst ujęty w podwójne cudzysłowy, znajdujący się w komórce A5. |
szef |
Ważne:
-
Funkcja SZUKAJ.TEKST.B jest przestarzała.
-
W skoroszytach mających wartość Zgodność w wersji 2 funkcja SZUKAJ.TEKST poprawiła działanie w przypadku par zastępczych, zliczania ich jako jednego znaku zamiast dwóch. Selektory odmian (często używane z symbolami emoji) nadal będą liczone jako oddzielne znaki. Przeczytaj więcej tutaj: Standard Unicode