XLOOKUP vs INDEX-MATCH w Excelu (wszystkie możliwe porównania)

  • Udostępnij To
Hugh West

Dziś dokonam analizy porównawczej XLOOKUP vs Funkcje INDEX-MATCH w Excel We wcześniejszych wersjach Excel , używaliśmy HLOOKUP , VLOOKUP , oraz INDEX-MATCH funkcje do szukania określonej wartości w zakresie komórek. Jednak wraz z pojawieniem się Office 365 , Excel udostępnił nam nową, dynamiczną funkcję o nazwie. XLOOKUP funkcja do przeprowadzenia podobnej operacji w sposób bardziej wyrafinowany. W tym artykule postaram się porównać szeroko stosowane funkcje, tj. XLOOKUP i INDEX-MATCH .

Pobierz Zeszyt ćwiczeń

Pobierz ten przykładowy plik, aby lepiej zrozumieć.

XLOOKUP a funkcje INDEX-MATCH.xlsx

Wprowadzenie do funkcji XLOOKUP

Na stronie XLOOKUP Funkcja służy do znalezienia określonej wartości w zakresie komórek lub tablicy. Następnie zwraca odpowiadające jej pierwsze dopasowanie. Pokazuje również najbliższe lub przybliżone dopasowanie, gdy nie ma dokładnego dopasowania.

Składnia:

=XLOOKUP(lookup_value,lookup_array,return_array,[if_not_found],[match_mode],[search_mode])

Argumenty:

  • Lookup_value : Jest to wartość, której szukamy w określonej kolumnie zakresu.
  • Lookup_array : Jest to tablica, w której szukamy lookup_value Może być zarówno wierszem jak i kolumną.
  • Return_array: Jest to kolumna, z której pochodzi odpowiadająca jej wartość lookup_value zostanie zwrócony.

Argumenty opcjonalne:

  • Jeśli_nie_znaleziono : Jest to wartość, która zostanie zwrócona w przypadku, gdy lookup_array nie ma wartości lookup_value.
  • Tryb dopasowania : Jest to liczba oznaczająca typ dopasowania dla lookup_value Jest to argument opcjonalny, może zawierać cztery wartości.
  1. Kiedy jest 0 , XLOOKUP będzie szukał dokładnego dopasowania (Domyślnie).
  2. Kiedy jest 1 , XLOOKUP Jeśli nie zostanie znalezione dokładne dopasowanie, zostanie dopasowana następna mniejsza wartość.
  3. Kiedy jest -1 , XLOOKUP Jeśli nie zostanie znalezione dokładne dopasowanie, zostanie dopasowana następna większa wartość.
  4. Kiedy jest 2 , XLOOKUP najpierw wyszuka przybliżone dopasowanie przy użyciu znaków wieloznacznych (Dotyczy tylko wartości wyszukiwania łańcuchów).
  • Search_mode : Jest to liczba oznaczająca typ operacji wyszukiwania przeprowadzonej na tablicy lookup_array. Jest to również opcjonalne, może mieć cztery wartości:
  1. Jeśli jest to 1 , XLOOKUP będzie przeszukiwać od góry do dołu w lookup_array (Default).
  2. Kiedy jest -1 , XLOOKUP będzie przeszukiwać od dołu do góry w
  3. Jeśli jest to 2 , XLOOKUP przeprowadzi wyszukiwanie binarne w porządku rosnącym.
  4. Kiedy jest -2 , XLOOKUP przeprowadzi wyszukiwanie binarne w porządku malejącym.

Wprowadzenie do funkcji INDEX-MATCH

Połączenie INDEX-MATCH funkcje służy do pobierania wartości z danego miejsca i dopasowania jej do zakresu źródłowego.

Składnia:

=INDEX(tablica,MATCH(lookup_value,lookup_array,match_type),no_of_column)

Argumenty:

Dla funkcji INDEX:

  • Array : Jest to zakres komórek, z których chcemy wyodrębnić wartość.
  • MATCH(lookup_value,lookup_array,match_type): Jest to numer wiersza zakresu, w którym znajduje się lookup_value pasuje do konkretnej wartości w lookup_array .
  • No_of_column: Jest to numer kolumny w tablicy, z której chcemy zwrócić wartość odpowiadającą wartości lookup_value .

Dla funkcji MATCH:

  • Lookup_value: Jest to wartość, której szukamy.
  • Lookup_array: Jest to tablica, w której szukamy lookup_value Może to być zarówno wiersz jak i kolumna.
  • Match_type: Jest to liczba całkowita oznaczająca typ meczu, którego szukamy. Jest to opcja.
  1. Kiedy jest -1 , MATCH najpierw szuka dokładnego dopasowania. W przypadku, gdy dokładne dopasowanie nie zostanie znalezione, szuka następnej większej wartości (Domyślnie) (przeciwnie do XLOOKUP ).

Warunkiem jest jednak, że. lookup_array musi być posortowany w porządku rosnącym, w przeciwnym razie wyświetli błąd.

  1. Kiedy jest 1 , MATCH W przypadku, gdy nie zostanie znaleziony dokładny odpowiednik, będzie szukał następnej mniejszej wartości (odwrotnie do XLOOKUP ).

Warunkiem jest jednak to, że. lookup_array musi być tym razem posortowany w porządku malejącym, w przeciwnym razie pokaże błąd.

  1. Kiedy jest 0 , MATCH będzie szukał dokładnego dopasowania.

Read More: Jak wybrać określone dane w programie Excel (6 metod)

7 Porównanie wykorzystania funkcji XLOOKUP i INDEX-MATCH

Teraz rozbiliśmy formułę, omówmy niektóre podobieństwa i niepodobieństwa między tymi dwoma funkcjami. Przed przejściem do głównych dyskusji, pokazuję główne punkty w tabeli dla Twojej wygody.

Punkt do dyskusji Podobieństwo/odmienność Wyjaśnienie
Column lookup_array Podobieństwo Oba obsługują kolumnę jako lookup_array.
Wiersz lookup_array Podobieństwo Oba obsługują wiersz jako lookup_array.
Brak dopasowania lookup_value Niepodobieństwo XLOOKUP ma domyślną opcję ustawienia braku dopasowania lookup_value, ale INDEX-MATCH nie ma.
Przybliżona zgodność Podobieństwo częściowe XLOOKUP może znaleźć następną mniejszą lub następną większą wartość, gdy nie ma dokładnego dopasowania. INDEX-MATCH może również to zrobić, ale tablica lookup_array musi być posortowana w porządku rosnącym lub malejącym.
Pasujące symbole wieloznaczne Podobieństwo Oba obsługują dopasowanie Wildcards.
Dopasowywanie wielu wartości Podobieństwo częściowe XLOOKUP może znaleźć pierwszą lub ostatnią wartość, gdy wiele wartości pasuje. Ale INDEX-MATCH może zwrócić tylko pierwszą wartość, która pasuje.
Wzór na tablicę Podobieństwo Obie obsługują formułę tablicową.

1. XLOOKUP i INDEX-MATCH do wyszukiwania wartości w kolumnie

W tym aspekcie istnieje podobieństwo między tymi dwoma funkcjami.Dla XLOOKUP i INDEX-MATCH , lookup_array może być kolumną dla obu funkcji.Tutaj szukamy dokładnie Oceny z fizyki nazwy ucznia w C ell F5 , Jennifer Marlo Chcieliśmy przeszukać od góry do dołu w Imię i nazwisko ucznia kolumny i zwrócić " Nie znaleziono " w przypadku, gdy nie znaleziono dopasowania.

  • Dla XLOOKUP zastosuj wzór w Komórka G5 .
=XLOOKUP(F5,C5:C16,D5:D16,"Not Found",0,1)

  • Dla INDEX-MATCH , wykorzystaj ten wzór w Komórka G5 .
=INDEX(B5:D16,MATCH(F5,C5:C16,0),3)

Read More: Jak dopasować wiele kryteriów z różnych tablic w Excelu

2. XLOOKUP i INDEX-MATCH do wyszukiwania wartości w wierszu

Również w tym aspekcie istnieje podobieństwo między obiema funkcjami.Dla XLOOKUP i INDEX-MATCH , lookup_array może być również wierszem dla obu funkcji. Dla ilustracji, mamy nowy zbiór danych z Identyfikatory , Nazwy oraz Oceny z fizyki oraz Klasy .

Zastanówmy się przez chwilę, że jest to bardzo szeroki zbiór danych i nie wiemy, jaka jest liczba Stopień Następnie, aby poznać ocenę danego ucznia, musimy użyć kolumny Rząd nagłówków (B4:E4) jako lookup_array i słowo " Stopień " jako lookup_value Możemy to osiągnąć używając zarówno XLOOKUP i INDEX-MATCH .

  • Aby dowiedzieć się, jaki jest stopień 3. uczeń , XLOOKUP formuła będzie taka jak w Komórka G5 .
=XLOOKUP("Grade",B4:E4,B7:E7, "Not Found",0,1)

  • W tym przypadku. INDEX-MATCH formuła będzie:
=INDEX(B5:E16,3,MATCH("Grade",B4:E4,0))

3. XLOOKUP i INDEX-MATCH gdy nie znaleziono dopasowania

Pod tym względem obie funkcje nie są podobne. Jeśli lookup_value nie pasuje do żadnej wartości w lookup_array można ustawić stałą wartość, która ma być zwrócona w XLOOKUP Aby to zrobić, należy ustawić tę wartość w jeśli_nie_znaleziono Z drugiej strony, nie ma takiej opcji w INDEX-MATCH Zostanie zwrócony błąd. Musisz użyć funkcja IFERROR na zewnątrz, aby poradzić sobie z błędem. W podanym zestawie danych, znajdziemy Imię i nazwisko ucznia wraz z identyfikatorem 100 .

  • W tym celu należy użyć XLOOKUP wzór w Komórka G5 .
=XLOOKUP(100,B5:B16,C5:C16,"Not Found",0,1)

  • Z drugiej strony, zastosuj to INDEX-MATCH wzór.
=INDEX(B5:E16,MATCH(100,B5:B16,0),2)

  • Ponieważ zwraca on błąd, musisz użyć an IFERROR funkcja na zewnątrz, aby obsłużyć ten błąd.
=IFERROR(INDEX(B5:E16,MATCH(100,B5:B16,0),2), "Not Found")

Podobne lektury

  • Excel INDEX MATCH, aby zwrócić wiele wartości w jednej komórce
  • Excel INDEX-MATCH Formuła, aby zwrócić wiele wartości poziomo
  • Jak używać formuły INDEX-MATCH w Excelu do generowania wielu wyników
  • [Naprawiono!] INDEX MATCH nie zwraca prawidłowej wartości w Excelu (5 powodów)
  • Jak używać INDEX MATCH zamiast VLOOKUP w Excelu (3 sposoby)

4. XLOOKUP i INDEX-MATCH w przypadku dopasowań przybliżonych

W tym aspekcie istnieje częściowe podobieństwo między tymi dwoma funkcjami.W XLOOKUP funkcja, jeśli lookup_value nie pasuje do żadnej wartości w lookup_array można zmodyfikować formułę tak, aby zwracała kolejną mniejszą lub kolejną większą wartość. Ustaw argument dopasowanie_typu do -1 jeśli chcesz uzyskać kolejną mniejszą wartość i ustaw ją na 1 jeśli chcesz uzyskać następną większą wartość.

Na przykład dowiemy się, że uczeń z oceną 50 lub następny większy znak.

  • Aby znaleźć wartość, zastosuj następującą metodę XLOOKUP wzór.
=XLOOKUP(50,D5:D16,C5:C16,"Not Found",1,1)

  • Jak widać, nie ma ucznia z oceną 50 Dlatego pokazuje ten, który jest zaraz po 50 , 51 przez Desmond Hayes .

Ta sama opcja znajduje się w INDEX-MATCH wzór.Ale wadą jest to, że musisz posortować lookup_array w porządku malejącym, jeśli chcesz następną większą wartość.W przeciwnym razie zwróci błąd.I aby uzyskać następną mniejszą wartość, musisz sortować w porządku rosnącym.

  • Po pierwsze, wstaw ten wzór do Komórka G5 .
=INDEX(B5:E16,MATCH(50,D5:D16,-1),2)

  • W rezultacie zobaczysz, że wynik pokazuje #N/A błąd.
  • Dlatego posortuj Zakres komórek D5:D16 w porządku rosnącym, a otrzymasz prawidłową wartość.

Uwaga specjalna: W XLOOKUP funkcja, -1 działa dla kolejnej mniejszej wartości, ale w INDEX-MATCH , -1 działa dla kolejnej większej wartości. Podobnie w XLOOKUP Funkcja, 1 działa dla kolejnej większej wartości, ale w INDEX-MATCH, 1 działa dla kolejnej mniejszej wartości.

Read More: Jak użyć INDEX i Match dla częściowego dopasowania (2 sposoby)

5. XLOOKUP i INDEX-MATCH w przypadku dopasowywania znaków wieloznacznych

W tym aspekcie istnieje podobieństwo między obiema funkcjami.W XLOOKUP i INDEX-MATCH , obie wspierają Żbiki . Tu, znajdziemy każdego ucznia z " Marlo "Wykonajmy poniższe kroki, aby zobaczyć XLOOKUP vs INDEX-MATCH porównanie.

  • Po pierwsze, zastosuj to XLOOKUP wzór w Komórka G5 aby uzyskać dane wyjściowe.
=XLOOKUP("*Marlo*",C5:C16,C5:C16,"Not Found",2,1)

Uwaga: Aby użyć symboli wieloznacznych w XLOOKUP , należy ustawić dopasowanie_typu argument do 2 . W przeciwnym razie, nie będzie działać.

  • Z drugiej strony. INDEX-MATCH wzór na wykonanie tego samego zadania będzie wyglądał tak.
=INDEX(B5:E16,MATCH("*Marlo*",C5:C16,0),2)

Read More: INDEX MATCH Wiele kryteriów z Wildcard w programie Excel (Kompletny przewodnik)

6. XLOOKUP i INDEX-MATCH Gdy wiele wartości pasuje do wartości szukanej

Ten przykład pokazuje XLOOKUP vs INDEX-MATCH gdy wiele wartości pasuje do wartości szukanej. W tym względzie istnieje również częściowe podobieństwo między tymi dwoma funkcjami. XLOOKUP i INDEX-MATCH oba zwracają tylko jedną wartość w przypadku, gdy wiele wartości w lookup_array pasować do lookup_value Ale w XLOOKUP Aby uzyskać pierwszą wartość, która pasuje, ustawiamy funkcję poszukiwanie_typu argument do 1 I aby uzyskać ostatnią wartość, która pasuje, ustaw poszukiwanie_typu argument do -1 Ale w INDEX-MATCH nie masz wyboru, otrzymasz tylko pierwszą wartość, która pasuje.

  • Aby pierwszy uczeń, który dostał 100 , można użyć tego XLOOKUP wzór w Komórka G5 .
=XLOOKUP(100,D5:D16,C5:C16,"Not Found",0,1)

  • Wraz z nim dostaniesz ostatniego ucznia z 100 używając tego XLOOKUP wzór.
=XLOOKUP(100,D5:D16,C5:C16,"Not Found",0,-1)

  • Wręcz przeciwnie, otrzymasz tylko pierwszą wartość, która pasuje do tego INDEX-MATCH wzór.
=INDEX(B5:E16,MATCH(100,D5:D16,0),2)

7. XLOOKUP i INDEX-MATCH w przypadku wielu wartości wyszukiwania

W tym przykładzie zademonstrujemy XLOOKUP vs INDEX-MATCH w przypadku wielu wartości lookup. Istnieje podobieństwo między tymi dwoma funkcjami w tym względzie. Obie pozwalają na wiele lookup_values (Array Formula).

  • Dla XLOOKUP funkcja, zadziała następujący wzór.
=XLOOKUP(G5:G8,B5:B16,E5:E16,"Not Found",0,1)

  • Następnie, dla INDEX-MATCH , zadziała również następująca funkcja.
=INDEX(B5:E16,MATCH(G5:G8,B5:B16,0),4)

Zalety &Wady funkcji XLOOKUP

Istnieją pewne zalety i wady korzystania z XLOOKUP Funkcja - zobaczmy je w skrócie.

Zalety

  • Ustawienie wartości domyślnej dla braku pasujących przypadków.
  • Możliwość wyszukiwania przybliżonych dopasowań bez sortowania lookup_array .
  • Dostęp do wyszukiwania zarówno z pierwszej, jak i ostatniej komórki lookup_array .

Wady

  • Działa wolniej niż INDEX-MATCH funkcja.
  • Dostępne w Office 365 tylko.

Zalety &Wady funkcji INDEX-MATCH

Na stronie INDEX-MATCH funkcje również dostały kilka następujących plusów i minusów.

Zalety

  • Działa szybciej niż XLOOKUP funkcja.
  • Dostępne w starej Excel wersje.

Wady

  • Nie może obsługiwać błędów, gdy nie znaleziono dopasowania.
  • Potrzebuje lookup_array do posortowania pod kątem przybliżonych dopasowań.
  • Zwraca tylko pierwszą wartość, gdy wiele wartości pasuje do lookup_value .

Wniosek

Wreszcie jesteśmy na końcu naszego długiego artykułu.Tutaj próbowaliśmy stworzyć analizę porównawczą XLOOKUP vs. INDEX-MATCH funkcje w Excelu. Daj nam znać swoje wnikliwe sugestie na ten temat. follow ExcelWIKI po więcej tutoriali.

Hugh West jest bardzo doświadczonym trenerem i analitykiem Excela z ponad 10-letnim doświadczeniem w branży. Posiada tytuł licencjata w dziedzinie rachunkowości i finansów oraz tytuł magistra administracji biznesowej. Hugh ma pasję do nauczania i opracował unikalne podejście do nauczania, które jest łatwe do naśladowania i zrozumienia. Jego specjalistyczna wiedza na temat programu Excel pomogła tysiącom studentów i profesjonalistów na całym świecie doskonalić swoje umiejętności i osiągać doskonałe wyniki w karierze. Za pośrednictwem swojego bloga Hugh dzieli się swoją wiedzą ze światem, oferując bezpłatne samouczki programu Excel i szkolenia online, aby pomóc osobom indywidualnym i firmom w pełni wykorzystać swój potencjał.