Kobieta z laptopu lying on the beach na kanapie

Wyszukaj pionowo fragment tekstu – funkcja WYSZUKAJ.PIONOWO z wieloznacznikiem

7 min. czytania

Funkcja WYSZUKAJ.PIONOWO pozwala wyszukiwać dane nie tylko po pełnym tekście, ale także po jego fragmencie – dzięki użyciu wieloznaczników (tzw. wildcards) i prostych funkcji tekstowych. Ten poradnik pokazuje krok po kroku, jak zbudować takie formuły w sposób prosty i odporny na zmiany w danych.

Czym jest WYSZUKAJ.PIONOWO?

WYSZUKAJ.PIONOWO (ang. VLOOKUP) służy do wyszukiwania wartości w pierwszej kolumnie tabeli i zwrócenia powiązanej informacji z jednej z kolumn po prawej stronie.

Najczęściej wykorzystuje się ją do:

  • wyszukiwania ceny po kodzie produktu,
  • pobierania danych klienta po numerze NIP,
  • łączenia danych z wielu plików (np. zamówienia, kadry, magazyn).

Ważne: funkcja zawsze szuka w pierwszej (najbardziej lewej) kolumnie zaznaczonego zakresu i zwraca wynik z kolumny na prawo.

Składnia funkcji WYSZUKAJ.PIONOWO

Standardowa postać funkcji wygląda tak:

=WYSZUKAJ.PIONOWO(szukana_wartość; tabela; nr_kolumny; [przeszukiwany_zakres])

Omówienie argumentów:

  • szukana_wartość – to, czego szukasz (np. kod produktu, fragment nazwy);
  • tabela – zakres komórek, w którym odbywa się wyszukiwanie (pierwsza kolumna musi zawierać wartości, po których szukasz);
  • nr_kolumny – numer kolumny w tym zakresie, z której ma zostać zwrócony wynik (1 oznacza pierwszą kolumnę, 2 – drugą itd.);
  • przeszukiwany_zakres – określa tryb dopasowania: FAŁSZ (0) – wyszukiwanie dokładne, PRAWDA (1) – przybliżone.

Do wyszukiwania fragmentu tekstu niemal zawsze używaj trybu FAŁSZ, aby mieć pełną kontrolę nad dopasowaniem.

Wieloznaczniki (wildcards) w wyszukiwaniu tekstu

W funkcjach wyszukiwania (w tym WYSZUKAJ.PIONOWO) możesz używać tzw. wieloznaczników, aby odszukiwać dane na podstawie fragmentu tekstu. Standardowe wieloznaczniki (zgodne z Excelem i Arkuszami Google):

  • * – zastępuje dowolną liczbę znaków (także zero znaków);
  • ? – zastępuje dokładnie jeden znak;
  • ~ – służy do „ucieczki” (escape) przed specjalnymi znakami * i ? (np. szukanie dosłownego *ABC).

W praktyce oznacza to, że w argumencie szukana_wartość możesz wpisać m.in.:

  • Zawiera"*ABC*" znajdzie tekst, który zawiera „ABC” gdziekolwiek w środku;
  • Zaczyna się od"ABC*" znajdzie tekst rozpoczynający się od „ABC”;
  • Kończy się na"*ABC" znajdzie tekst kończący się na „ABC”.

Wyszukiwanie fragmentu tekstu z wieloznacznikami

Załóżmy, że masz tabelę produktów:

A (kod) B (nazwa produktu) C (cena)
P001 Kawa Arabica 250g 18,99
P002 Herbata zielona 100g 12,50
P003 Kawa Robusta 1kg 45,00
P004 Kawa zbożowa klasyczna 9,99

Zakres danych: A2:C5.

Szukanie po fragmencie nazwy (tekst zawiera słowo)

Chcesz znaleźć cenę produktu, którego nazwa zawiera słowo „Kawa”. Użyj formuły:

=WYSZUKAJ.PIONOWO("*Kawa*"; A2:C5; 3; FAŁSZ)

Co oznaczają poszczególne elementy formuły:

  • Wzorzec*Kawa* wskazuje, że szukasz tekstu zawierającego „Kawa”;
  • ZakresA2:C5 to tabela, w której szukasz (pierwsza kolumna to „Kod”);
  • Kolumna3 nakazuje zwrócić wartość z trzeciej kolumny (cena);
  • Tryb dopasowaniaFAŁSZ wymusza dopasowanie dokładne z obsługą wieloznaczników.

Aby formuła zadziałała, kryterium musi leżeć w pierwszej kolumnie zakresu wyszukiwania. Jeśli szukany fragment jest w innej kolumnie (np. w nazwie produktu w kolumnie B), skorzystaj z rozwiązań opisanych niżej w sekcji „Gdy fragment tekstu nie jest w pierwszej kolumnie tabeli”.

Szukanie po początku tekstu (zaczyna się od…)

Chcesz znaleźć produkt, którego kod zaczyna się na „P00”. Użyj:

=WYSZUKAJ.PIONOWO("P00*"; A2:C5; 2; FAŁSZ)

Wynikiem będzie nazwa produktu z kolumny B (druga kolumna), bo wzorzec P00* dopasuje wszystkie kody rozpoczynające się od „P00”.

Szukanie po końcówce tekstu (kończy się na…)

Chcesz znaleźć zapis w kolumnie z identyfikatorem, który kończy się na „-2024”. Użyj:

=WYSZUKAJ.PIONOWO("*-2024"; A2:C100; 2; FAŁSZ)

W ten sposób wyszukasz rekordy zakończone określonym sufiksem (np. rok, typ dokumentu).

Gdy fragment tekstu nie jest w pierwszej kolumnie tabeli

Klasyczna WYSZUKAJ.PIONOWO ma jedno ważne ograniczenie: szuka tylko po pierwszej kolumnie zaznaczonego zakresu. Poniżej trzy praktyczne rozwiązania:

Przesunąć lub skopiować kolumnę

Najprościej przebudować układ: skopiuj kolumnę z tekstem (np. „Nazwa produktu”) na lewo, aby stała się pierwszą kolumną tabeli, a następnie dopasuj zakres w formule WYSZUKAJ.PIONOWO do nowej struktury. To dobre rozwiązanie, gdy masz wpływ na układ danych.

Użyć funkcji tekstowych LEWY / FRAGMENT.TEKSTU

Gdy chcesz szukać po konkretnym fragmencie (np. pierwszych czterech znakach kodu), najpierw wyciągnij ten fragment, a dopiero potem użyj WYSZUKAJ.PIONOWO. Przykład wyciągnięcia 4 znaków od lewej:

=LEWY(A2; 4)

Jeśli fragment leży w środku tekstu (np. znaki 5–8), użyj:

=FRAGMENT.TEKSTU(A2; 5; 4)

Ten sam fragment wyciągnij w tabeli źródłowej (kolumna pomocnicza) i po nim dokonuj wyszukiwania.

Zastosować nowsze funkcje (X.WYSZUKAJ, INDEKS + PODAJ.POZYCJĘ)

Nowsza funkcja X.WYSZUKAJ (Microsoft 365) pozwala szukać w dowolnej kolumnie, a nie tylko w pierwszej, wspiera wieloznaczniki i wiele warunków. Alternatywnie użyj kombinacji INDEKS + PODAJ.POZYCJĘ, którą Microsoft wskazuje jako bardziej uniwersalną od WYSZUKAJ.PIONOWO w złożonych scenariuszach.

Wyszukiwanie fragmentu tekstu w Google Arkuszach

W Google Arkuszach funkcja ma identyczną nazwę WYSZUKAJ.PIONOWO i zbliżoną składnię:

=WYSZUKAJ.PIONOWO(szukana_wartość; zakres; indeks; [sortowane])

Najważniejsze różnice i zasady:

  • szukana_wartość – może zawierać wieloznaczniki * i ?, co pozwala na wyszukiwanie po fragmencie tekstu;
  • zakres – tabela z danymi (pierwsza kolumna musi zawierać wartości wyszukiwania);
  • indeks – numer kolumny w zakresie, z której ma zostać zwrócona wartość;
  • sortowane – TRUE/FALSE (odpowiednik PRAWDA/FAŁSZ).

Zasady używania wieloznaczników są takie same jak w Excelu (fragment tekstu, początek, koniec, pojedynczy znak).

Typowe błędy i pułapki przy wyszukiwaniu fragmentu tekstu

Błąd #N/D! (nie znaleziono)

Przy wyszukiwaniu fragmentu tekstu błąd #N/D! pojawia się m.in., gdy:

  • wieloznacznik jest wpisany niepoprawnie (np. * Kawa * z dodatkowymi spacjami),
  • fragment nie istnieje w danych,
  • szukasz w złej kolumnie (nie w pierwszej kolumnie zakresu).

Zamiast pokazywać błąd użytkownikowi, ukryj go funkcją JEŻELI.BŁĄD (zwróci pusty tekst lub komunikat). Przykład:

=JEŻELI.BŁĄD(WYSZUKAJ.PIONOWO("*Kawa*"; A2:C100; 3; FAŁSZ); "")

Zera zamiast pustych komórek

Gdy zamiast pustych komórek pojawiają się zera, „doklej” pusty znak "" do wartości zwracanej lub wyszukiwanej, aby Excel potraktował ją jak tekst:

=WYSZUKAJ.PIONOWO("*Kawa*"; A2:C100; 3; FAŁSZ) & ""

Przybliżone vs dokładne dopasowanie

Porównanie trybów dopasowania:

Tryb Kiedy używać Wymagania
PRAWDA (przybliżone) przedziały liczbowe (np. widełki wynagrodzeń) dane posortowane rosnąco
FAŁSZ (dokładne) fragmenty tekstu, identyfikatory, wyszukiwanie z wieloznacznikami brak specjalnych wymagań

Przy wyszukiwaniu tekstu z wieloznacznikami niemal zawsze stosuj FAŁSZ.

Kiedy warto rozważyć inne funkcje niż WYSZUKAJ.PIONOWO

Choć WYSZUKAJ.PIONOWO to klasyka, w złożonych scenariuszach lepsze mogą być:

  • X.WYSZUKAJ – nowsza, elastyczniejsza funkcja w Microsoft 365; wspiera wyszukiwanie w dowolnych kolumnach, wiele warunków i wieloznaczniki;
  • INDEKS + PODAJ.POZYCJĘ – omija ograniczenia WYSZUKAJ.PIONOWO (np. wyszukiwanie po kolumnie innej niż pierwsza) i dobrze radzi sobie w dynamicznych układach danych;
  • LEWY i FRAGMENT.TEKSTU – gdy najpierw trzeba „wyciągnąć” część tekstu i na jej podstawie zbudować klucz wyszukiwania.

Łącząc WYSZUKAJ.PIONOWO z wieloznacznikami i prostymi funkcjami tekstowymi, zbudujesz elastyczne formuły: od „zaczyna się od…” po wyszukiwanie fragmentu w środku identyfikatora – zarówno w Excelu, jak i w Google Arkuszach.