Spis treści
Istnieje kilka sposobów na złożenie wniosku VLOOKUP lub pionowy lookup w Microsoft Excel, aby zwrócić dane na podstawie wielu dopasowań. W tym artykule poznasz wszystkie możliwe podejścia do aktywacji VLOOKUP i wyodrębnić wszystkie dostępne dane z odpowiednimi ilustracjami.
Pobierz Zeszyt ćwiczeń
Możesz pobrać skoroszyt Excela, który wykorzystaliśmy do przygotowania tego artykułu.
VLOOKUP i zwracanie wszystkich dopasowań.xlsx7 sposobów na VLOOKUP i zwrócenie wszystkich dopasowań w Excelu
Na stronie VLOOKUP Funkcja szuka wartości w lewej kolumnie tabeli i zwraca wartość w tym samym wierszu z podanej kolumny. Jednak funkcja ta nie jest w stanie wyodrębnić danych na podstawie więcej niż jednego dopasowania z kolumny. Musimy więc wstawić kilka innych funkcji i formuł, aby wyszukać wartość i zwrócić wszystkie dopasowania znalezione w kolumnie.
1) VLOOKUP i zwracanie wielu dopasowań w kolumnie
Na poniższym rysunku mamy tabelę zawierającą losowe nazwiska kilku pracowników i ich działy. Zakładając, że chcemy w jednej kolumnie pokazać nazwiska pracowników, którzy pracują w dziale Manufacture.
Jeśli jesteś Excel 365 użytkownik, to możesz przejść na FILTR funkcja tutaj, aby za chwilę znaleźć wartości zwrotne. z FILTR funkcja, wymagana formuła na wyjściu Komórka C16 będzie:
=FILTER(C5:C13,C15=B5:B13)
Po naciśnięciu Wejdź na stronę zobaczysz nazwiska pracowników z Produkcja dział w pionowym układzie.
Lub jeśli używasz starsza wersja programu Microsoft Excel to musisz użyć następującej formuły łączonej:
=INDEX($C$5:$C$13, SMALL(IF(($C$15=$B$5:$B$13), MATCH(ROW($B$5:$B$13), ROW($B$5:$B$13)), ""),ROWS($A$1:A1)))
Po naciśnięciu Wejdź na stronę w wyjściu znajdziesz imię pracownika Komórka C16 .
Poprzez zastosowanie Uchwyt do napełniania z Komórka C16 do dołu, otrzymasz od razu resztę nazwisk pracowników z określonego działu.
🔎 Jak działa ta formuła?
- ROW($B$5:$B$13): Na stronie ROW Funkcja pobiera numery wierszy zdefiniowanych odwołań do komórek i zwraca następującą tablicę:
{5;6;7;8;9;10;11;12;13}
- MATCH(ROW($B$5:$B$13), ROW($B$5:$B$13)): MATCH Funkcja konwertuje tutaj wyodrębnione numery wierszy zaczynając od 1. Tak więc ta część formuły zwraca tablicę z:
{1;2;3;4;5;6;7;8;9}
- IF(($C$15=$B$5:$B$13), MATCH(ROW($B$5:$B$13), ROW($B$5:$B$13)), ""): Z pomocą JEŚLI Funkcja, ta część formuły zwraca numer indeksu wierszy spełniających określony warunek. Tak więc, ta część zwraca tablicę of:
{"";2;"";4;"";"";"";"";9}
- Na stronie MAŁA funkcja we wzorze wyciąga pierwszą małą liczbę znalezioną w poprzednim kroku i przypisuje ją do drugiego argumentu (row_number) z INDEX funkcja.
- Wreszcie INDEX Funkcja pokazuje nazwisko pracownika na podstawie podanego numeru wiersza.
- Na stronie ROWS funkcja w tym wzorze definiuje k-ta numer dla MAŁA Funkcja. Podczas korzystania z Uchwyt do napełniania aby wypełnić pozostałe komórki, formuła używa tego k-tego numer do wyodrębnienia danych, a następnie MAŁA funkcja.
Read More: INDEX MATCH vs VLOOKUP Funkcja (9 przykładów)
2) VLOOKUP i zwrócenie wszystkich dopasowań w wierszu w Excelu
Jeśli chcesz zobaczyć nazwiska pracowników w poziomie, to musisz połączyć FILTR funkcja z TRANSPOSE funkcja. TRANSPOSE Funkcja konwertuje pionowy zakres komórek na poziomy lub odwrotnie. Aby użyć tej połączonej formuły, musisz być użytkownikiem Excel 365 użytkownik.
Tak więc, wymagana formuła na wyjściu Komórka C16 będzie:
=TRANSPOSE(FILTER(C5:C13,C15=B5:B13))
Teraz naciśnij Wejdź na stronę a pokażą Ci się nazwiska pracowników z działu Manufacture w poziomej tablicy.
Lub wstawić do wyjścia następującą formułę Komórka C16 jeśli nie jesteś użytkownikiem Excel 365.
=INDEX($C$5:$C$13, SMALL(IF($C$15=$B$5:$B$13, ROW($B$5:$B$13)-MIN(ROW($B$5:$B$13))+1, ""), COLUMNS($A$1:A1)))
Naciśnij Wejdź na stronę i znajdziesz imię i nazwisko pracownika z podanego działu.
Teraz użyj Uchwyt do napełniania i przeciągnąć Komórka C16 w prawo, aż znajdziesz pierwszy #NUM Błąd. I dostaniesz wszystkie nazwiska z Produkcja wydziału w poziomie.
Wstawiona tutaj formuła jest prawie podobna do pierwszej długiej formuły użytej w poprzednim przykładzie artykułu, gdzie wyciągnięte dane musiały być wyświetlane w pionie. Jedyną zasadniczą różnicą jest to, że używamy KOLUMNY funkcja określająca numer sekwencji MAŁA Podczas autouzupełniania komórek w poziomie, formuła będzie podążać za numerem sekwencyjnym funkcji MAŁA funkcja do wyodrębniania danych.
Read More: Excel VLOOKUP, aby zwrócić wiele wartości pionowo
3. VLOOKUP do zwracania wielu wartości na podstawie kryteriów
W środku tabeli dodaliśmy dodatkową kolumnę, która przechowuje identyfikatory projektów, które są przypisane do odpowiednich pracowników obecnych w Kolumna D Tak więc, wprowadzimy teraz dwa różne warunki i wyodrębnimy dane w oparciu o wszystkie znalezione mecze.
Na przykład, chcemy poznać nazwiska pracowników, którzy obecnie pracują w Sprzedaż dział na temat ID projektu DMR 103 .
Wymagana formuła na wyjściu Komórka C17 będzie:
=IFERROR(INDEX($D$5:$D$13, SMALL(IF(1=((--($C$15=$B$5:$B$13)) * (--($C$16=$C$5:$C$13)))), ROW($D$5:$D$13)-4,""), ROW()-16)),")
Naciśnij Wejdź na stronę i znajdziesz imię pracownika pod podanymi kryteriami.
Teraz wypełnij Komórka C17 aby pokazać resztę nazwy z podanymi warunkami.
🚩 Niektóre ważne cechy tej formuły:
- Ta formuła jest również dość podobna do tej zastosowanej w poprzedniej metodzie.
- W tej formule IFERROR Funkcja została użyta do pokazania niestandardowego wyjścia, jeśli zostanie znaleziony jakikolwiek błąd.
- Na stronie JEŚLI Funkcja w tej formule łączy dwa różne kryteria i za pomocą podwójnej jedności, wartości boolean (TRUE lub FALSE) zmienić się w 1 lub 0 Następnie funkcja zwraca numer indeksu wierszy, które zostały dopasowane do podanych kryteriów.
- ROW($D$5:$D$13)-4: W tej części liczba '4' jest numerem wiersza nagłówka Pracownik.
- ROW()-16: A wartość liczbowa '16' używany w tej części oznacza poprzedni numer wiersza pierwszej komórki wyjściowej.
Read More: Użyj VLOOKUP z wieloma kryteriami w programie Excel (6 metod + alternatywy)
4. VLOOKUP i wyciągnij wszystkie dopasowania z automatycznym filtrem
Poprzez zastosowanie AutoFilter , możemy łatwiej wyodrębnić dane na podstawie wszystkich dopasowań. Ponieważ zamierzamy wyciągnąć nazwiska pracowników z działu Manufacture, musimy wykonać następujące kroki:
📌 Krok 1:
➤ Zaznacz całą tabelę danych i kliknij prawym przyciskiem myszy.
➤ Wybierz 'Filtruj według wartości wybranej komórki' opcja z Filtr opcje.
Więc, właśnie aktywowałeś Filtr przyciski dla swoich nagłówków.
📌 Krok 2:
➤ Kliknij na Filtr przycisk z Dział nagłówek.
➤ Postaw znak na Produkcja tylko opcja.
➤ Prasa OK i gotowe.
Tak jak na poniższym zrzucie ekranu, wyświetlą się dane wynikowe i przefiltrowane.
Read More: VLOOKUP z wieloma dopasowaniami w Excelu
Podobne lektury
- Jak zastosować podwójny VLOOKUP w Excelu (4 szybkie sposoby)
- VLOOKUP nie działa (8 powodów & rozwiązania)
- Jak połączyć Excel SUMIF & VLOOKUP przez wiele arkuszy
- VLOOKUP do zwracania wielu kolumn w Excelu (4 przykłady)
- Jak VLOOKUP z wieloma warunkami w programie Excel (2 metody)
5. VLOOKUP do ekstrakcji wszystkich dopasowań z zaawansowanym filtrem w Excelu
Można również użyć Filtr zaawansowany gdzie należy zdefiniować kryteria wybierając zakres kryteriów z arkusza kalkulacyjnego Excel. Na poniższym rysunku, B15:B16 jest zakresem kryteriów.
📌 Krok 1:
➤ Wybierz całą tabelę danych.
➤ Pod Dane wstążki, kliknij na Zaawansowane polecenie z Sortowanie i filtrowanie rozwiń.
Pojawi się okno dialogowe o nazwie Filtr zaawansowany otworzy się.
📌 Krok 2:
➤ Wybierz całą tabelę danych dla Wykaz Zakres wejście.
➤ Wybierz B15:B16 dla wejścia Kryteria Zakres .
➤ Prasa OK .
Pojawi się przefiltrowany wynik z nazwiskami pracowników z listy Produkcja tylko w departamencie.
Read More: VLOOKUP z wieloma kryteriami w Excelu (6 przykładów)
6) VLOOKUP i zwrócenie wszystkich wartości poprzez sformatowanie jako tabela
Teraz pokażemy Ci inną prostą metodę filtrowania tabeli danych poprzez przekształcenie jej w tabelę sformatowaną.
📌 Krok 1:
➤ Wybierz najpierw tabelę danych podstawowych.
➤ Od. Format jako tabela rozwijane pod Strona główna zakładka, wybierz dowolną z preferowanych tabel.
Po pierwszym kroku, twoja tabela danych będzie teraz wyglądać jak na poniższym zrzucie ekranu z przefiltrowanymi nagłówkami.
📌 Krok 2:
➤ Wybierz opcję Produkcja po kliknięciu na przycisk filtrowania z Dział nagłówek.
➤ Prasa OK i gotowe.
Poniższy zrzut ekranu pokazuje wyjścia na podstawie określonego wyboru.
Read More: Zastosowanie VBA VLOOKUP do wyszukiwania wartości z innego arkusza w Excelu
7) VLOOKUP do wyciągania wszystkich dopasowań do jednej komórki w Excelu
Na stronie TEXTJOIN Funkcja konkatenuje listę lub zakres łańcuchów tekstowych z użyciem ogranicznika. Dzięki zastosowaniu TEXTJOIN oraz JEŚLI funkcje razem, możemy wyszukać wartość i wyodrębnić dane na podstawie wszystkich dopasowań do jednej komórki.
Wymagana formuła na wyjściu Komórka C16 będzie:
=TEXTJOIN(", ",TRUE,IF($B$5:$B$13=$C$15,$C$5:$C$13,""))
Po naciśnięciu Wejdź na stronę , znajdziesz tam nazwiska pracowników z. Produkcja dział w jednej komórce oddzielony przecinkami.
W tej formule JEŚLI Funkcja zwraca tablicę z dopasowanymi nazwami oraz wartość logiczną "FALSE" dla niedopasowanych komórek. TEXTJOIN Funkcja łączy następnie wszystkie znalezione nazwy z podanym separatorem.
Read More: VLOOKUP Częściowy tekst z pojedynczej komórki w Excelu
Słowa końcowe
Mam nadzieję, że wszystkie te metody wymienione powyżej pomogą Ci teraz zastosować je w swoich arkuszach kalkulacyjnych Excel, gdy będzie to konieczne. Jeśli masz jakieś pytania lub opinie, daj mi znać w sekcji komentarzy. Możesz też sprawdzić nasze inne artykuły związane z funkcjami Excela na tej stronie.