Łapka LogoŁapka Infa
🔎
Arkusze

WYSZUKAJ.PIONOWO (VLOOKUP)

Jak przestać się bać tej funkcji i zdobywać na niej punkty z matury bez zawahania. Król łączenia tabel.

WYSZUKAJ.PIONOWO - Koszmar czy Złote Narzędzie?

Większość uczniów boi się funkcji WYSZUKAJ.PIONOWO (ang. VLOOKUP). Brzmi jak coś magicznego, co zawsze wyrzuca błąd #N/D!. Tak naprawdę to jedna z najpotężniejszych funkcji na maturze z informatyki i jest wręcz niezbędna do rozwiązywania typowych zadań łączeniowych, zastępując SQL-owe JOIN.

Po co nam to?

Wyobraź sobie, że w jednym arkuszu masz id_klienta i kwotę zamówienia:

ID_KlientaKwota
1150 zł
2300 zł

A w drugim arkuszu (np. Klienci.txt) masz słownik, który tłumaczy ID na Imię:

IDImie
1Maciej
2Kasia

Chcesz przypisać "Macieja" i "Kasię" do tabeli z zamówieniami. I tutaj wchodzi WYSZUKAJ.PIONOWO.

Składnia jak dla ludzi

Formuła wygląda tak: =WYSZUKAJ.PIONOWO(szukana_wartość; tabela_tablica; nr_indeksu_kolumny; [przeszukiwany_zakres])

Rozkodujmy to na prosty język:

  1. szukana_wartość - "Kogo szukamy?" (np. kliknij w komórkę A2 z ID_Klienta = 1)
  2. tabela_tablica - "Gdzie szukamy, w jakim słowniku?" (zaznacz całą tabelę w drugim arkuszu słownikowym. Zawsze ZAMRÓŻ JĄ dolarami np. $A$1:$B$100)
  3. nr_indeksu_kolumny - "Którą kolumnę z tego słownika chcemy przykleić?" (Skoro Imię to druga kolumna od lewej w zaznaczeniu, wpisz po prostu cyfrę 2).
  4. przeszukiwany_zakres - "Czy szukamy dokładnie tego ID?" (Zawsze wpisujesz tu FAŁSZ albo 0, co oznacza "znajdź dokładne dopasowanie, a nie podobne liczbowo").

Gotowa formuła wygląda np. tak: =WYSZUKAJ.PIONOWO(A2; Klienci!$A$1:$B$100; 2; 0) I przeciągamy w dół!

[!WARNING] Dlaczego dostaję błąd #N/D!? Najczęściej powody są dwa:

  1. Brak dolarów: Zapomniałeś zamrozić tabelę źródłową znakami $. Przy przeciąganiu formuły w dół, tabela "zsuwa się" na dół i gubi słownik!
  2. Typy danych: Twoja szukana wartość w jednej tabeli to tekst (np. pobrany z funkcji tekstowej "1"), a w słowniku to czysta liczba 1. Arkusz uznaje, że to zupełnie dwie różne rzeczy. Użyj wtedy funkcji WARTOŚĆ(), żeby przekonwertować tekst na liczbę.

[!TIP] Dla dociekliwych: Kiedy WYSZUKAJ.PIONOWO nie zadziała? Ta funkcja ma jeden ogromny minus. Musi szukać identyfikatora w PIERWSZEJ (skrajnej lewej) KOLUMNIE zaznaczonej tablicy. Jeśli twój słownik ma ułożone kolumny odwrotnie: Imię | ID, VLOOKUP rzuci błędem. Jak to obejść?

  1. Wytnij kolumnę w słowniku i wklej na przód (najszybsze na maturze).
  2. Użyj zaawansowanej kombinacji =INDEKS(zwracane; PODAJ.POZYCJĘ(szukane; wektor_szukany; 0)).
  3. W nowszych wersjach Excela (od Office 365) użyj funkcji =X.WYSZUKAJ(), która w ogóle nie ma takich problemów.