0Pricing
Excel Formulas Academy · Lekcja

Dlaczego INDEX-MATCH przewyższa VLOOKUP

Proszę poznać przewagę nad wyszukiwaniem opartym na kolumnach pod względem szybkości i elastyczności.

Dlaczego INDEX-MATCH przewyższa VLOOKUP to bezpłatna lekcja Excel Formulas Academy na CoddyKit. To lekcja 4 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Excel Formulas Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Excel Formulas Academy zawiera 4 lekcji w sumie.

Szybkie przypomnienie o VLOOKUP

VLOOKUP przeszukuje pierwszą kolumnę tabeli i zwraca wartość z kolumny znajdującej się na jej prawo, wskazanej za pomocą numeru.

Na przykład formuła =VLOOKUP(E1, A2:D20, 3, FALSE) znajduje wartość E1 w kolumnie A i zwraca wartość z trzeciej kolumny tabeli.

Funkcja ta jest popularna i prosta, ale ma istotne ograniczenia. Jak się przekonasz, INDEX-MATCH pozwala uniknąć każdego z nich.

=VLOOKUP(E1, A2:D20, 3, FALSE)

Ograniczenie 1: VLOOKUP wyszukuje tylko w prawo

Funkcja VLOOKUP musi przeszukiwać skrajną lewą kolumnę swojej tabeli i może zwracać wartości tylko znajdujące się na jej prawo. Nie potrafi wyszukiwać w lewo.

Jeśli identyfikatory znajdują się w kolumnie C, a potrzebne nazwy w kolumnie A, funkcja VLOOKUP nie może wykonać takiego wyszukiwania.

INDEX-MATCH nie ma takiego ograniczenia. Formuła =INDEX(A2:A20, MATCH(E1, C2:C20, 0)) przeszukuje kolumnę C i zwraca wartość z kolumny A bez żadnych obejść.

=INDEX(A2:A20, MATCH(E1, C2:C20, 0))

Ograniczenie 2: Podatny na błędy numer kolumny

Trzeci argument funkcji VLOOKUP to wpisany na stałe numer kolumny, na przykład 3 w formule =VLOOKUP(E1, A2:D20, 3, FALSE).

Jeśli ktoś wstawi nową kolumnę w środku tabeli, liczba 3 zacznie wskazywać niewłaściwe pole, a formuła po cichu zwróci nieprawidłowe dane.

INDEX-MATCH odwołuje się do konkretnych kolumn za pomocą zakresów, więc po wstawieniu kolumny odwołania zostają automatycznie zaktualizowane, a wynik pozostaje prawidłowy.

=VLOOKUP(E1, A2:D20, 3, FALSE)

INDEX-MATCH zachowuje poprawność po wstawieniu kolumn

Ponieważ INDEX wskazuje konkretny zakres kolumny, taki jak C2:C20, odwołanie przemieszcza się razem z kolumną po zmianie układu.

Po wstawieniu nowej kolumny przed nią arkusz samodzielnie aktualizuje C2:C20 do D2:D20. Formuła nadal zwraca to samo pole.

Ta odporność ma znaczenie w rzeczywistych skoroszytach, które z czasem edytuje wiele osób. Mniej cichych błędów oznacza bardziej wiarygodne raporty.

=INDEX(C2:C20, MATCH(E1, A2:A20, 0))

Ograniczenie 3: Wydajność w szerokich tabelach

Funkcja VLOOKUP często odwołuje się do całego obszaru tabeli, na przykład A2:Z20, nawet jeśli potrzebna jest tylko jedna kolumna. W dużych arkuszach oznacza to, że silnik obliczeniowy skanuje znacznie więcej komórek, niż jest to konieczne.

INDEX-MATCH korzysta tylko z dwóch wąskich zakresów kolumn: jednej, którą przeszukuje, i jednej, z której zwraca wynik.

W przypadku kilku formuł różnica jest niewidoczna, ale przy tysiącach wyszukiwań INDEX-MATCH może przeliczać wyniki zauważalnie szybciej.

=INDEX(Z2:Z20, MATCH(E1, A2:A20, 0))

Ograniczenie 4: Zwracanie wielu kolumn

Aby pobrać kilka pól za pomocą VLOOKUP, trzeba powtórzyć całą formułę i za każdym razem zmienić numer kolumny, co łatwo prowadzi do pomyłek.

W INDEX-MATCH można obliczyć pozycję raz i używać jej ponownie. Wiele osób zapisuje formułę =MATCH(E1, A2:A20, 0) w komórce pomocniczej, na przykład H1, a następnie wpisuje =INDEX(C2:C20, H1) oraz =INDEX(D2:D20, H1).

Jedno wyszukiwanie, wiele uporządkowanych wyników.

=INDEX(C2:C20, $H$1)

Gdzie pasuje XLOOKUP

Nowsze arkusze kalkulacyjne oferują funkcję XLOOKUP, która również umożliwia wyszukiwanie w dowolnym kierunku i eliminuje problem numeru kolumny, rozwiązując te same problemy co INDEX-MATCH.

Formuła =XLOOKUP(E1, A2:A20, C2:C20) jest przejrzysta i czytelna.

Jednak funkcja XLOOKUP nie jest dostępna w starszych wersjach programu Excel ani w niektórych udostępnionych skoroszytach. INDEX-MATCH działa niemal wszędzie, dlatego nadal jest to ważna umiejętność.

=XLOOKUP(E1, A2:A20, C2:C20)

Kompromis dotyczący czytelności

Trzeba jednak uczciwie przyznać, że INDEX-MATCH ma jedną wadę: na pierwszy rzut oka jest bardziej rozwlekła i trudniejsza do odczytania niż VLOOKUP.

Porównaj formuły =VLOOKUP(E1, A2:D20, 3, FALSE) oraz =INDEX(C2:C20, MATCH(E1, A2:A20, 0)).

Zagnieżdżanie wymaga wprawy. Odczytywanie od środka — najpierw MATCH, a potem INDEX — ułatwia analizę, a elastyczność zazwyczaj rekompensuje dodatkowe znaki.

=INDEX(C2:C20, MATCH(E1, A2:A20, 0))

Porównanie obok siebie

Oto to samo wyszukiwanie zapisane na oba sposoby dla tabeli, w której nazwy znajdują się w kolumnie A, a wynagrodzenia w kolumnie D:

  • VLOOKUP: =VLOOKUP(E1, A2:D20, 4, FALSE)
  • INDEX-MATCH: =INDEX(D2:D20, MATCH(E1, A2:A20, 0))

Obie formuły zwracają wynagrodzenie. Jednak po wstawieniu kolumny tylko wersja INDEX-MATCH pozostanie poprawna i tylko ona może zwrócić wartość znajdującą się na lewo od kolumny A.

=INDEX(D2:D20, MATCH(E1, A2:A20, 0))

Kiedy wybrać poszczególne funkcje

Praktyczna zasada:

  • Używaj funkcji XLOOKUP, gdy arkusz ją obsługuje, aby korzystać z najbardziej przejrzystej nowoczesnej składni
  • Używaj funkcji INDEX-MATCH, gdy potrzebujesz maksymalnej zgodności, wyszukiwania w lewo i odpornych na wstawianie kolumn odwołań
  • Używaj funkcji VLOOKUP tylko do szybkich, prostych wyszukiwań wartości znajdujących się na prawo od klucza w stabilnej tabeli

Znajomość INDEX-MATCH pozwala odczytywać i naprawiać niezliczone istniejące skoroszyty, które korzystają z tej funkcji.

=INDEX(D2:D20, MATCH(E1, A2:A20, 0))

Szersza perspektywa

VLOOKUP to pojedyncze, sztywne narzędzie. INDEX-MATCH opiera się na dwóch prostych pomysłach — znalezieniu pozycji i pobraniu wartości — które można elastycznie łączyć.

To właśnie możliwość łączenia funkcji jest najważniejszą lekcją: niewielkie funkcje, które można ze sobą łączyć, pozwalają obsługiwać wyszukiwanie dwukierunkowe, wyszukiwanie w lewo i pobieranie wielu pól, czego nie potrafi funkcja wykonująca wszystko za jednym razem.

Opanowanie podstawowych elementów pozwala wyjść poza ograniczenia każdej pojedynczej funkcji wyszukiwania.

=INDEX(C2:C20, MATCH(E1, A2:A20, 0))

Szybkie sprawdzenie

Wybierz zaletę, którą INDEX-MATCH ma w porównaniu z VLOOKUP.

Podsumowanie: Dlaczego INDEX-MATCH wygrywa

Porównano oba podejścia i poznano przewagę INDEX-MATCH:

  • Umożliwia wyszukiwanie w dowolnym kierunku, także na lewo od klucza
  • Odwołania do kolumn pozostają poprawne po wstawieniu lub przeniesieniu kolumn
  • Może działać szybciej, ponieważ odczytuje tylko dwie potrzebne kolumny
  • Działa w starszych arkuszach, w których funkcja XLOOKUP jest niedostępna

VLOOKUP sprawdza się przy szybkich zadaniach, ale INDEX-MATCH zapewnia trwałe i elastyczne wyszukiwanie — to podstawa zaawansowanych technik wyszukiwania dwukierunkowego, które zostaną omówione dalej.

=INDEX(C2:C20, MATCH(E1, A2:A20, 0))

Często zadawane pytania

Czy lekcja „Dlaczego INDEX-MATCH przewyższa VLOOKUP” jest bezpłatna?

Tak — pełny tekst „Dlaczego INDEX-MATCH przewyższa VLOOKUP” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Excel Formulas Academy, przejdź na CoddyKit PRO. Kurs Excel Formulas Academy zawiera 4 lekcji w sumie.

Co nauczysz się w „Dlaczego INDEX-MATCH przewyższa VLOOKUP”?

Proszę poznać przewagę nad wyszukiwaniem opartym na kolumnach pod względem szybkości i elastyczności. Ćwiczysz Excel Formulas Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Excel Formulas Academy?

Nie wymagamy żadnego doświadczenia. Excel Formulas Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 4 z 4.

Ile czasu zajmuje lekcja „Dlaczego INDEX-MATCH przewyższa VLOOKUP”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Excel Formulas Academy?

Tak. Każda lekcja Excel Formulas Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Pobieranie wartości za pomocą INDEX
  2. Znajdowanie pozycji za pomocą MATCH
  3. Łączenie INDEX i MATCH
  4. Dlaczego INDEX-MATCH przewyższa VLOOKUP
← Powrót do Excel Formulas Academy