
WYSZUKAJ.PIONOWO to jedna z najczęściej używanych funkcji Excela wszech czasów. Niezależnie od tego, czy dopasowujesz identyfikatory klientów do nazwisk, pobierasz ceny z katalogu produktów, czy łączysz dane z dwóch różnych arkuszy — WYSZUKAJ.PIONOWO wykona zadanie za pomocą jednej formuły. Ten przewodnik zawiera wszystko, czego potrzebujesz: składnię, praktyczne przykłady, typowe pułapki oraz informacje o tym, kiedy lepsza jest inna funkcja.
WYSZUKAJ.PIONOWO to skrót od Vertical Lookup (wyszukiwanie pionowe). Przeszukuje pierwszą kolumnę zakresu w poszukiwaniu wartości i zwraca wartość z określonej kolumny w tym samym wierszu. Wyobraź sobie to jako precyzyjną operację wyszukiwania: przekazujesz Excelowi klucz, wskazujesz, gdzie szukać, i prosisz o zwrócenie informacji z tego samego rekordu.
Typowe zastosowania w praktyce:
=VLOOKUP(lookup_value, table_array, col_index_num, [range_lookup])
Każdy argument pełni określoną rolę:
| Argument | Wymagany? | Znaczenie |
|---|---|---|
| lookup_value | Tak | Wartość, której szukasz — odwołanie do komórki, liczba lub ciąg tekstowy. |
| table_array | Tak | Zakres zawierający Twoje dane. Kolumna wyszukiwania musi być skrajną lewą kolumną tego zakresu. |
| col_index_num | Tak | Numer kolumny (licząc od lewej strony table_array), której wartość chcesz zwrócić. |
| range_lookup | Nie | FALSE (lub 0) dla dopasowania dokładnego; TRUE (lub 1) dla dopasowania przybliżonego. Domyślnie przyjmuje wartość TRUE, jeśli zostanie pominięty. |
Ważne: Zawsze używaj FALSE jako czwartego argumentu, chyba że pracujesz z posortowaną tabelą i naprawdę potrzebujesz dopasowania przybliżonego (np. przy wyszukiwaniu przedziału ocen lub progu podatkowego). Pominięcie tego argumentu lub użycie TRUE na nieposortowanych danych to jedna z głównych przyczyn nieprawidłowych wyników.
Wyobraź sobie, że zarządzasz niewielkim katalogiem produktów w Arkusz1 i chcesz pobrać ceny do formularza zamówienia w Arkusz2. Oto jak wyglądają dane w Arkusz1:
| A — SKU | B — Nazwa produktu | C — Cena |
|---|---|---|
| P001 | Wireless Mouse | $29,99 |
| P002 | USB-C Hub | $49,99 |
| P003 | Mechanical Keyboard | $89,99 |
| P004 | Monitor Stand | $34,99 |
W Arkusz2 kolumna A zawiera kod SKU wprowadzony przez użytkownika. Aby zwrócić nazwę produktu w kolumnie B arkusza Arkusz2, wpisz:
=VLOOKUP(A2, Sheet1!$A$2:$C$5, 2, FALSE)
Aby zwrócić cenę w kolumnie C arkusza Arkusz2, zmień indeks kolumny na 3:
=VLOOKUP(A2, Sheet1!$A$2:$C$5, 3, FALSE)
Zwróć uwagę na znaki dolara w Sheet1!$A$2:$C$5. Blokują one zakres, dzięki czemu podczas kopiowania formuły w dół do innych wierszy argument table_array nie przesuwa się. Jeśli nie jesteś zaznajomiony z działaniem odwołań do komórek, artykuł Odwołania do komórek w Excelu: odwołania względne i bezwzględne omawia tę kwestię szczegółowo.
Ustaw czwarty argument na TRUE, gdy tabela wyszukiwania jest posortowana rosnąco i chcesz znaleźć najbliższą wartość poniżej szukanej. Klasycznym przykładem jest przeliczanie surowego wyniku na ocenę literową:
=VLOOKUP(B2, $E$2:$F$6, 2, TRUE)
| E — Min. wynik | F — Ocena |
|---|---|
| 0 | F |
| 60 | D |
| 70 | C |
| 80 | B |
| 90 | A |
Wynik 85 zostanie dopasowany do wiersza z wartością 80 i zwróci „B". Działa to poprawnie wyłącznie dlatego, że kolumna z minimalnym wynikiem jest posortowana od najniższej do najwyższej wartości.
To najczęstszy błąd. Oznacza, że WYSZUKAJ.PIONOWO nie znalazło wartości lookup_value w pierwszej kolumnie tabeli. Sprawdź:
Aby ukryć błąd podczas debugowania, opakuj formułę: =IFERROR(VLOOKUP(A2, $D$2:$F$10, 2, FALSE), "Nie znaleziono")
Pojawia się, gdy col_index_num jest większy niż liczba kolumn w table_array. Na przykład podanie kolumny 5, gdy zakres ma tylko 3 kolumny. Policz kolumny i odpowiednio zmniejsz indeks.
Zazwyczaj jest spowodowany wartością col_index_num równą zero lub wartością nienumeryczną. Indeks kolumny musi być dodatnią liczbą całkowitą wynoszącą co najmniej 1.
Jeśli pominąłeś czwarty argument (lub ustawiłeś go na TRUE), ale tabela nie jest posortowana, WYSZUKAJ.PIONOWO może zwrócić nieprawidłowe dopasowanie przybliżone bez żadnego komunikatu o błędzie. Zawsze używaj FALSE przy dopasowaniu dokładnym.
Możesz łączyć WYSZUKAJ.PIONOWO z funkcjami logicznymi, aby uzyskać bardziej zaawansowane wyniki. Na przykład, wyświetlaj rabat tylko wtedy, gdy wyszukiwanie zakończy się powodzeniem:
=IF(IFERROR(VLOOKUP(A2, $D$2:$F$10, 3, FALSE), "") = "", "No discount", VLOOKUP(A2, $D$2:$F$10, 3, FALSE))
Aby dowiedzieć się więcej o tworzeniu testów logicznych wewnątrz formuł, zapoznaj się z kompletnym przewodnikiem na temat funkcji JEŻELI: testy logiczne i zagnieżdżone JEŻELI.
Możesz odwoływać się do danych z innego arkusza, poprzedzając zakres nazwą arkusza:
=VLOOKUP(A2, Catalog!$A$2:$C$100, 2, FALSE)
Aby odwołać się do innego skoroszytu (gdy jest otwarty):
=VLOOKUP(A2, [PriceList.xlsx]Sheet1!$A$2:$C$100, 2, FALSE)
Jeśli skoroszyt jest zamknięty, Excel automatycznie wyświetli pełną ścieżkę pliku po utworzeniu odwołania przy otwartych obu plikach.
Kombinacja INDEKS i PODAJ.POZYCJĘ usuwa ograniczenie dotyczące lewej kolumny i jest bardziej odporna na dodawanie lub przestawianie kolumn. Jeśli zmagasz się z ograniczeniami WYSZUKAJ.PIONOWO, dedykowany artykuł na temat INDEKS i PODAJ.POZYCJĘ: lepsza metoda wyszukiwania prowadzi przez tę zmianę krok po kroku.
Dostępna w Excelu 365 i Excelu 2021, funkcja X.WYSZUKAJ jest prostsza i potężniejsza:
=XLOOKUP(A2, Sheet1!$A$2:$A$5, Sheet1!$C$2:$C$5, "Not found")
Przeszukuje w dowolnym kierunku, natywnie obsługuje brakujące wartości i nie wymaga numerycznego indeksu kolumny. Jeśli Twoja wersja Excela ją obsługuje, rozważ użycie X.WYSZUKAJ we wszystkich nowych projektach.
WYSZUKAJ.PIONOWO doskonale współpracuje z wieloma innymi przepływami pracy w Excelu. Na przykład pulpit sprzedaży śledzący KPI i wyniki często używa WYSZUKAJ.PIONOWO do pobierania nazw produktów lub regionów przedstawicieli z tabel referencyjnych do raportów zbiorczych. Podobnie, tworzenie szablonu faktury z profesjonalnym rozliczeniem prawie zawsze wiąże się z użyciem WYSZUKAJ.PIONOWO, które pobiera ceny jednostkowe z listy produktów na podstawie kodów pozycji wprowadzonych przez użytkownika.
Dla zespołów pracujących z dużymi zbiorami danych połączenie WYSZUKAJ.PIONOWO z tabelami przestawnymi to produktywny przepływ pracy: użyj WYSZUKAJ.PIONOWO, aby wzbogacić surowe dane o etykiety kategorii, a następnie podsumuj je w tabeli przestawnej.
Jeśli wiesz, czego potrzebujesz, ale nie pamiętasz dokładnej składni — na przykład „wyszukaj identyfikator pracownika w kolumnie A arkusza HR i zwróć jego wynagrodzenie z kolumny D" — GPTExcel pozwala opisać potrzebę w prostym języku i natychmiast generuje poprawną formułę WYSZUKAJ.PIONOWO, gotową do wklejenia do arkusza kalkulacyjnego.
Najbardziej prawdopodobną przyczyną są niespójne typy danych lub dodatkowe białe znaki w określonych komórkach. Uruchom =TRIM(A2) na swoich wartościach wyszukiwania i upewnij się, że wszystkie wpisy w kolumnie wyszukiwania są przechowywane jako ten sam typ danych (wszystkie tekstowe lub wszystkie numeryczne). Możesz również użyć =IFERROR(VLOOKUP(...), "Sprawdź dane"), aby zidentyfikować, które wiersze zawodzą, bez przerywania reszty raportu.
Nie za pomocą jednej formuły w tradycyjnym sensie. Potrzebujesz osobnej funkcji WYSZUKAJ.PIONOWO dla każdej kolumny, którą chcesz zwrócić, zmieniając jedynie col_index_num. Alternatywnie, X.WYSZUKAJ w Excelu 365 może zwrócić cały wiersz wyników za pomocą jednej formuły, określając tablicę zwracającą wiele kolumn.
WYSZUKAJ.PIONOWO zawsze zwraca wartość odpowiadającą pierwszemu znalezionemu dopasowaniu, skanując od góry do dołu. Jeśli kolumna wyszukiwania zawiera duplikaty, kolejne dopasowania są ignorowane. W scenariuszach związanych z duplikatami rozważ użycie tabeli przestawnej lub kolumn pomocniczych w celu usunięcia duplikatów przed wyszukiwaniem.
Nie. WYSZUKAJ.PIONOWO traktuje wielkie i małe litery jako identyczne. Wyszukiwanie „jabłko" dopasuje „Jabłko" lub „JABŁKO". Jeśli potrzebujesz wyszukiwania z rozróżnianiem wielkości liter, musisz użyć formuły tablicowej łączącej funkcje EXACT() i INDEKS/PODAJ.POZYCJĘ.
Dowiedz się, jak funkcja TEXT w programie Excel konwertuje liczby, daty i godziny na sformatowane ciągi tekstowe za pomocą kodów formatu — z prawdziwymi przykładami i praktycznymi zastosowaniami.
Dowiedz się, jak działa funkcja IF w programie Excel, jak zagnieżdżać wiele funkcji IF oraz kiedy używać nowoczesnych alternatyw, takich jak IFS i SWITCH, aby uzyskać czystszą i bardziej czytelną logikę.
Opanuj funkcje SUMIF i SUMIFS w Excelu, aby sumować dane na podstawie jednego lub wielu warunków — z dokładną składnią, praktycznymi przykładami i szczegółowym przewodnikiem krok po kroku.