Jak Vlookup z wieloma dopasowaniami w Excelu (z prostymi krokami)

  • Udostępnij To
Hugh West

Jedną z najbardziej niesamowitych i szeroko stosowanych funkcji Excela jest. Funkcja VLOOKUP Do tej pory nauczyliśmy się wyciągać pojedyncze dopasowanie z zakresu komórek za pomocą tej funkcji. Często można spotkać się ze scenariuszami, w których trzeba uzyskać wszystkie pasujące wartości dla unikalnego identyfikatora. W tym artykule zademonstrujemy, jak można wyciągnąć wiele dopasowań z zakresu komórek za pomocą funkcji Funkcja VLOOKUP w Excelu.

Pobierz Zeszyt ćwiczeń

Możesz pobrać następujący skoroszyt Excela, aby lepiej zrozumieć i samemu poćwiczyć.

Wykonywanie Vlookup z wieloma dopasowaniami.xlsx

2 Kroki do Vlookup z wieloma dopasowaniami w Excelu

Tutaj mamy Rekordy książkowe księgarni Martin Ten zbiór danych zawiera Typ książki , Nazwa książki oraz Autor niektórych książek w kolumnach B , C oraz D odpowiednio.

Dzisiaj naszym celem jest wyciągnięcie wszystkich zapałek z każdego rodzaju książki przy użyciu Funkcja VLOOKUP . Wykonamy to w dwóch krokach, więc zbadajmy je po kolei.

Tutaj użyliśmy Microsoft Excel 365 wersja, możesz użyć każdej innej wersji zgodnie z Twoją wygodą.

📌 Krok 01: Utwórz unikalną nazwę dla każdej wartości wyszukiwania

  • Na samym początku wstawiamy nową kolumnę z nagłówkiem Kolumna pomocników po lewej stronie do kolumny lookup Typ książki i wprowadź tę formułę w komórce B5 .
=C5&COUNTIF(C5:$25,C5) Podział formuły
  • COUNTIF(C5:$C$25,C5) zwraca całkowitą liczbę komórek w zakresie C5:C25 ( Typ książki ), które zawierają wartość w komórce C5 ( Powieść ).Zob. Funkcja COUNTIF dla szczegółów.
    • Najprościej rzecz ujmując, ile jest powieści.Jest to 7 .
  • C5&COUNTIF(C5:$C$25,C5) konkatenuje wartość w komórce C5 ( Powieść ) z nim.
    • Więc zwraca Nowela7 .

Podczas przeciągania Uchwyt do napełniania narzędzie, C5 przyrasta jeden po drugim, jak C5 , C6 , C7 ... ale C25 pozostaje stały, dlatego dla każdego Typ książki , wcześniejsze zostają wykluczone i generowana jest nowa nazwa.

Na przykład w przypadku powieści, Powieść1 do Nowela7 są generowane, i podobnie dla Poezja i inne rodzaje książek.

  • Następnie naciśnij ENTER .

  • Następnie należy ustawić kursor w prawym dolnym rogu komórki B5 i będzie to wyglądało na plus. (+) Znak. Właściwie, to jest Uchwyt do napełniania narzędzie.
  • Teraz kliknij na nią dwukrotnie.

Formuła ta zostanie skopiowana do pozostałych komórek. Wszystkie wartości lookup posiadają unikalną nazwę, np. Powieść1 , Novel2.., Poezja1 , Poezja2... , itp.

📌 Krok 02: Użyj funkcji VLOOKUP

  • Po pierwsze, utwórz nową kolumnę z Nagłówek kolumny jako wartość podglądu.

  • Po drugie, w komórce wstaw następującą formułę G5 która jest pierwszą komórką tej kolumny.
=VLOOKUP(G$4&ROW($A$1:INDIRECT("A"&COUNTIF($C$5:$C$25,G$4))),$B$5:$E$25,3,FALSE) Podział formuły
  • COUNTIF($C$5:$C$25,G$4) mówi, ile komórek w zakresie C5:C25 ( Typ książki ) zawierają wartość w komórce G4 ( Powieść ).
    • Najprościej mówiąc, ile jest w sumie powieści.Jest to 7 .

Użyliśmy bezwzględnego odwołania do komórki zakresu C5:C25 ( $C$5:$C$25 ), ponieważ chcemy, aby pozostała ona niezmieniona, jeśli skopiujemy formułę do dowolnej komórki.

  • INDIRECT("A"&COUNTIF($C$5:$C$25,G$4)) staje się INDIRECT("A"&7) i zwraca referencję do komórki A7 . See the Funkcja INDIRECT dla szczegółów.
  • ROW($A$1:INDIRECT("A"&COUNTIF($C$5:$C$25,G$4))) staje się teraz ROW(A1:A7) .Zob. Funkcja ROW dla szczegółów.
    • Zwraca on tablicę z 1 do 7 jak {1, 2, 3, 4, 5, 6, 7} .

Użyliśmy $A$1 ponieważ nie chcemy, aby zmieniła się ona, jeśli skopiujemy formułę do innej komórki.

  • G$4&ROW($A$1:INDIRECT("A"&COUNTIF($C$5:$C$25,G$4))) teraz konkatenuje wartość w komórce G4 ( Powieść ) z tablicą zwróconą przez Funkcja ROW i zwraca inną tablicę.
    • Więc zwraca {Nowela1, Nowela2, ..., Nowela7} .
  • VLOOKUP(G$4&ROW($A$1:INDIRECT("A"&COUNTIF($C$5:$C$25,G$4))),$B$5:$E$25,3,FALSE) staje się VLOOKUP({Nowela1, Nowela2, ..., Nowela7},$B$5:$E$25,3,FALSE) .

Wyszukuje każdą wartość tablicy {Nowela1, Nowela2, ... Nowela7} w kolumnie "lookup B .

Następnie zwraca odpowiednią nazwę powieści z 3. kolumna (jako col_index_num jest 3 ).W ten sposób otrzymujemy listę wszystkich powieści.

  • Jak zwykle, naciśnij przycisk ENTER klucz.

Uwaga: To formuła tablicowa, więc nie zapomnij nacisnąć Ctrl + Shift + Enter chyba że jesteś w Excelu 365 .

A dla pozostałych Rodzaje książek ,

  • Na początku wstaw ich nazwiska obok siebie jako Nagłówki kolumn i przeciągnąć Uchwyt do napełniania .

Read More: INDIRECT VLOOKUP w Excelu

Podobne lektury

  • VLOOKUP nie działa (8 powodów & rozwiązania)
  • Excel LOOKUP vs VLOOKUP: z 3 przykładami
  • Dlaczego VLOOKUP zwraca #N/A kiedy istnieje dopasowanie (5 przyczyn & rozwiązania)
  • Użyj VLOOKUP z wieloma kryteriami w programie Excel (6 metod + alternatywy)
  • Excel VLOOKUP, aby znaleźć ostatnią wartość w kolumnie (z alternatywami)

Alternatywne sposoby na Vlookup z wieloma dopasowaniami w Excelu

Jeśli poprzednia metoda wydaje się niebezpieczna, nie martw się, jest więcej dostępnych opcji.

1) Używanie funkcji FILTRU

Jest to rzeczywiście najprostsza metoda. W tym przypadku użyjemy tylko Funkcja FILTRU Wykonaj te proste kroki.

📌 Kroki:

  • Po pierwsze, zapisz Typ książki jako Nagłówek kolumny i wprowadź następującą formułę w komórce F5 .
=FILTER($C$5:$C$25,$B$5:$B$25=F$4) Podział formuły

Tutaj,

  • $C$5:$C$25 ( Nazwa książki ) to. lookup_array Szukamy nazw książek. Ty użyj swojej.
  • $B$5:$B$25 ( Typ książki ) to. matching_array . Chcemy dopasować typy książek. Ty użyj swojej odpowiednio.
  • F4 ( Powieść ) to. dopasowanie_wartości . Chcemy dopasować się do powieści. Używasz go odpowiednio.
  • Następnie naciśnij ENTER .

Teraz, jeśli chcesz, aby Nazwy książek wszystkich Rodzaje książek ,

  • Na początku należy wstawić ich nazwy jako Nagłówki kolumn obok siebie, a następnie przeciągnij Uchwyt do napełniania narzędzie.

2. stosowanie kombinacji funkcji INDEX, SMALL i ROWS (kompatybilne ze starszymi wersjami programu Excel)

Na stronie Funkcja FILTRU jest dostępny tylko w Office 365 . Tak więc, jeśli używasz starszej wersji programu Excel, nie martw się, mamy dla ciebie inne obejście, które jest proste i łatwe; po prostu podążaj za nim.

📌 Kroki:

  • Przede wszystkim wstawić Typ książki jako Nagłówek kolumny w komórce F4 i wprowadź tę formułę w komórce F5 .
=IFERROR(INDEX($C$5:$C$25,(SMALL(IF($B$5:$B$25=F4,ROW(B5:B25)-ROWS(B1:B4),""),(ROW(B5:B25)-ROWS(B1:B4))))),"") Podział formuły
  • ROW(B5:B25) zwraca tablicę {5, 6, 7, ..., 25} . ROWS(B1:B4) zwraca 4 . Więc ROW(B5:B25)-ROWS(B1:B4) zwraca tablicę {1, 2, 3, ..., 21} . See the ROW oraz ROWS funkcja dla szczegółów.
  • IF($B$5:$B$25=F4,ROW(B5:B25)-ROWS(B1:B4),"") zwraca odpowiednią liczbę z tablicy {1, 2, 3, ..., 21} wartość w komórce F4 ( Powieść ) odpowiada wartości w dowolnej komórce zakresu B5:B25 ( Typ książki ). W przeciwnym razie zwraca pustą komórkę. zob. Funkcja IF dla szczegółów.

  • SMALL(IF($B$5:$B$25=F4,ROW(B5:B25)-ROWS(B1:B4),""),(ROW(B5:B25)-ROWS(B1:B4))) staje się SMALL({1, ..., 3, ..., 6, ..., 20, ...},{1, 2, 3, 4, ...., 21}) i zwraca najpierw liczby, a następnie #NUM! błędy w pustych komórkach. Zobacz. Funkcja SMALL dla szczegółów.

  • INDEX($C$5:$C$25,(SMALL(IF($B$5:$B$25=F4,ROW(B5:B25)-ROWS(B1:B4),""),(ROW(B5:B25)-ROWS(B1:B4))))) staje się INDEX($C$5:$C$25,{1,3,6,11,...,#NUM!}) i zwraca odpowiednią Nazwy książek (Nazwa powieści) oraz #NUM! błędy, patrz. Funkcja INDEX dla szczegółów.

  • Na koniec zawinęliśmy formułę do środka Funkcja IFERROR aby zamienić błędy na puste komórki.
  • Następnie należy nacisnąć ENTER .

  • Teraz, jeśli chcesz, wstaw drugi Rodzaje książek jako Nagłówki kolumn i przeciągnąć Uchwyt do napełniania . dostaniesz książki innych typów.

3) Vlookup z wieloma dopasowaniami i zwracaniem wyników w wierszu

W poprzednich metodach otrzymaliśmy wyniki w pionowych kolumnach. Ale jeśli chcemy uzyskać wartości w wierszu, jak możemy to zrobić? Tutaj otrzymamy m.in. Autor nazwy dla różnych Rodzaje książek w rzędzie. Wystarczy uważnie wykonać poniższe kroki.

📌 Kroki:

  • Na początku przejdź do komórki G5 i zapisz poniższy wzór.
=IFERROR(INDEX($D$5:$D$19,SMALL(IF($F5=$B$5:$B$19,ROW($D$5:$D$19)-4,""),COLUMN()-6))),")

Ta formuła jest podobna do poprzedniej, więc jeśli masz problem ze zrozumieniem tej formuły, proszę zobacz poprzednie wyjaśnienie .

  • Następnie dotknij przycisku ENTER klucz.

Ale w tym zbiorze danych są jeszcze inni autorzy, którzy mają powieści, więc jak je zdobyć?

Wystarczy przeciągnąć Uchwyt do napełniania aż do komórki K5 aby uzyskać drugi Autorzy z Powieść Ponadto, przeciągnij Uchwyt do napełniania narzędzie do komórki K7 aby uzyskać nazwy Autorzy dla różnych typów książek. Dla wyjaśnienia patrz obrazek poniżej.

Jak wyszukać wiele dopasowań z kilkoma kryteriami?

W poprzednich przykładach znajdowaliśmy wartości dla pojedynczych kryteriów. Na przykład uzyskiwaliśmy tytuły książek dla określonego typu książki. Ale tutaj będziemy sugerować się wieloma kryteriami. Będziemy szukać wartości dla kryteriów Powieści z Charles Dickens używając tej metody. Zobaczmy to w akcji.

📌 Kroki:

  • Przede wszystkim należy wybrać komórkę H5 i wklejenie poniższego wzoru.
=IFERROR(INDEX($C$5:$C$25,SMALL(IF(1=((--($F$5=$B$5:$B$25))*(--($G$5=$D$5:$D$25)))),ROW($C$5:$C$25)-4,""),ROW()-4))),")
  • Następnie naciśnij ENTER .

Jak zrobić Vlookup i zwrócić wiele dopasowań w jednej komórce

We wcześniejszych podejściach otrzymywaliśmy wartości w różnych komórkach. Ale pokażemy, jak możemy uzyskać wyniki w jednej komórce. Tak więc, bez dalszej zwłoki, zanurkujmy!

📌 Kroki:

  • Przede wszystkim, przejdź do komórki G5 i wprowadź poniższy wzór.
=TEXTJOIN(", ",TRUE,IF($F$5=$B$5:$B$25,C5:C25,"))

Tutaj Funkcja IF pobiera wartość z zakresu C5:C25 gdzie odpowiednie wartości w zakresie B5:B25 pasuje do wartości w komórce F5 . Then, the Funkcja TEXTJOIN łączy wartości tablicy z przecinkiem jako separatorem.

  • Po drugie, naciśnij ENTER .

Read More: INDEX MATCH vs VLOOKUP Funkcja (9 przykładów)

Wniosek

Ten artykuł wyjaśnia, jak vlookup z wieloma dopasowaniami w Excelu w prosty i zwięzły sposób. Nie zapomnij pobrać pliku ćwiczeniowego. Dziękujemy za przeczytanie tego artykułu. Mamy nadzieję, że było to pomocne. Daj nam znać w sekcji komentarzy, jeśli masz jakieś pytania lub sugestie. Zapraszamy na naszą stronę internetową, ExcelWIKI , dostawcy kompleksowych rozwiązań dla programu Excel, aby dowiedzieć się więcej.

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ł.