Spis treści
Praca z dużą liczbą danych prowadzi do uzyskania wielu wyników. W Excelu istnieje bardzo wygodny sposób na wyodrębnienie wielu wyników. W tym artykule pokażemy, jak wykorzystać funkcję INDEX-MATCH formuła w programie Excel, aby wygenerować wiele wyników.
Pobierz szablon praktyki
Możesz pobrać stąd darmowy szablon Excela do ćwiczeń i poćwiczyć samodzielnie.
INDEX MATCH Multiple Results.xlsx4 Przydatne sposoby w realizacji INDEX & MATCH Funkcje razem w Excelu, aby wydobyć wiele wyników
W tej części omówione zostanie szczegółowo wykorzystanie funkcja INDEX oraz funkcja MATCH razem w Excelu, aby uzyskać wiele wyników.
1) Znajdź wiele wyników w tablicy przy użyciu formuły INDEX MATCH w Excelu
Rozważmy następujący zbiór danych, w którym chcieliśmy znaleźć różne oceny studentów z różnych egzaminów.
Możemy to uzyskać uruchamiając INDEX-MATCH w naszym arkuszu.
Kroki na znalezienie wielu wyników w zestawie tablicy przy użyciu INDEX-MATCH funkcje są podane poniżej.
Kroki:
- Wybierz nazwę ze zbioru danych ( B5:B11 ) i umieścić nazwę w innej komórce, aby później użyć numeru referencyjnego komórki (np. nazwa Villiers w Komórka G4 ).
- W innej komórce, która ma być komórką wynikową (np. Komórka G7 ), napisz następujący wzór,
=INDEX($C$5:$C$11,SMALL(IF(ISNUMBER(MATCH($B$5:$B$11,$G$4,0)),MATCH(ROW($B$5:$B$11),ROW($B$5:$B$11)),""),ROWS($A$1:A1)))
Tutaj,
$C$5:$C$11 = tablica do wyszukiwania wartości lookup
$B$5:$B$11 = tablica, w której znajduje się wartość lookup
- Naciśnij Wejdź na stronę .
Zauważysz, że wynik dla danych (np. Villiers ), które umieszczasz w wybranej komórce ( G4 ), pojawi się w komórce wynikowej (np. 65 w G7 ).
- Teraz przeciągnij wiersz w dół o Uchwyt do napełniania aby uzyskać resztę wyników tej samej wartości lookup.
Ponieważ proces ten nie jest stały dla żadnej konkretnej wartości, więc możesz wybrać dowolne dane lookup w wybranej komórce (np. G4 ), a wynik dla tych konkretnych danych zostanie automatycznie zaktualizowany w komórce wynikowej (np. G7 ).
Aby zrozumieć więcej zobacz poniższy gif.
Podział formuły:
Rozbijmy formułę, aby zrozumieć, jak otrzymaliśmy wynik.
- MATCH($B$5:$B$11, $G$4, 0) staje się,
-> MATCH({"Flintoff"; "Ronaldo"; "Plessis"; "Villiers"; "Beckham"; "Villiers"; "Plessis"}, "Villiers", 0)
-> Wyjście: {#N/A; #N/A; #N/A; 1; #N/A; 1; #N/A}
Wyjaśnienie: Jeśli szukana wartość znajdzie dopasowanie w tablicy lookup, to MATCH funkcja zwraca 1 w przeciwnym razie zwraca #N/A .
- ISNUMBER(MATCH($B$5:$B$11, $G$4, 0) staje się,
-> ISNUMBER({#N/A; #N/A; #N/A; 1; #N/A; 1; #N/A})
-> Wyjście: {FALSE; FALSE; FALSE; TRUE; FALSE; TRUE; FALSE}.
Wyjaśnienie: Jak funkcja IF nie jest w stanie obsłużyć wartości błędów, więc funkcja ISNUMBER jest wykorzystywana do konwersji wartości tablicowych na wartości Boolean.
- IF(ISNUMBER(MATCH($B$5:$B$11, $G$4, 0)), MATCH(ROW($B$5:$B$11), ROW($B$5:$B$11)), "") staje się,
-> IF({FALSE; FALSE; FALSE; TRUE; FALSE; TRUE; FALSE}, MATCH(ROW($B$5:$B$11), ROW($B$5:$B$11)), "")
staje się
-> IF({FALSE; FALSE; FALSE; TRUE; FALSE; TRUE; FALSE}, {1; 2; 3; 4; 5; 6; 7}, "")
-> Wyjście: {""; ""; ""; 4; ""; 6}
Wyjaśnienie: Po pierwsze. JEŚLI Funkcja konwertuje wartości Boolean na numery wierszy i spacje, a następnie. MATCH oraz funkcja ROW s obliczają tablicę z kolejnymi liczbami, od 1 do n, gdzie n jest ostatnią tożsamością liczbową całkowitego rozmiaru zakresu komórek.Jako $B$5:$B$11 ma 7 wartości, więc tablica staje się {1; 2; 3; 4; 5; 6; 7} .
- SMALL(IF(ISNUMBER(MATCH($B$5:$B$11, $G$4, 0)), MATCH(ROW($B$5:$B$11), ROW($B$5:$B$11)), ""), ROWS($A$1:A1))) staje się
-> SMALL({""; ""; 4; ""; 6}, ROWS($A$1:A1))
-> SMALL({""; ""; 4; ""; 6}, 1)
-> Wyjście: 4
Wyjaśnienie: Po pierwsze, funkcja SMALL określa, którą wartość uzyskać na podstawie numeru wiersza. Następnie Rzędy Funkcja zwraca liczbę, która zmienia się za każdym razem, gdy komórka jest kopiowana i wklejana do komórek poniżej.Początkowo zwracała 4 zgodnie z naszym zbiorem danych. W kolejnej komórce poniżej, ROWS($A$1:A1) zmiany w ROWS($A$1:A2) i zwraca 6 .
- INDEX($C$5:$C$11, SMALL(IF(ISNUMBER(MATCH($B$5:$B$11, $G$4, 0)), MATCH(ROW($B$5:$B$11), ROW($B$5:$B$11)), ""), ROWS($A$1:A1))) staje się
-> INDEX($C$5:$C$11, 4)
-> Wyjście: 65
Wyjaśnienie: Na stronie INDEX Funkcja zwraca wartość z podanej tablicy na podstawie numeru wiersza i kolumny. 4. wartość w tablicy $C$5:$C$11 jest 65 , więc INDEX funkcja zwraca 65 w komórce G7 .
Read More: IF z INDEX-MATCH w Excelu (3 odpowiednie podejścia)
2) Znajdź wiele wyników nadchodzącego wydarzenia Nazwa & Data z INDEX MATCH Formula w Excelu
Czasami zapominamy o dacie ważnych wydarzeń.W takim przypadku INDEX MATCH funkcje pracują jako ratownicy.
Poniżej przykładowe dane, w których chcieliśmy poznać zbliżające się urodziny wśród naszych znajomych.
Więc, to co zrobiliśmy to, wdrożenie INDEX MATCH wzór, aby dowiedzieć się, kto i kiedy ma następne urodziny.
Zatem wzór na poznanie imienia osoby lub nazwy nadchodzącego wydarzenia to,
=INDEX($B$5:$B$9,MATCH(F5,$C$5:$C$9,1)+1)
A wzór na poznanie daty nadchodzącego wydarzenia to,
=INDEX($C$5:$C$9,MATCH(F5,$C$5:$C$9,1)+1)
Podział formuły:
Rozbijmy formułę, aby zrozumieć, jak dowiedzieliśmy się o imieniu Alex i dacie jego urodzin.
- MATCH(F5,$C$5:$C$9,1)
-> Wyjście: 4
Wyjaśnienie: Na stronie MATCH Funkcja znajduje pozycję wartości lookup ( Komórka F5 = Czwartek, 11 listopada 2021 r. ) w stałej tablicy ( $C$5:$C$9 = wykaz dat ).
W tym przykładzie, nie chcieliśmy dokładnego dopasowania, chcieliśmy, aby MATCH funkcja ma zwracać przybliżone dopasowanie, więc ustawiamy trzeci argument na 1 (lub TRUE ).
- INDEX($B$5:$B$9,MATCH(F5,$C$5:$C$9,1)+1) staje się
-> INDEX($B$5:$B$9, 4) +1)
-> Wyjście: Alex /(Nazwa wydarzenia)
Wyjaśnienie: Na stronie INDEX Funkcja przyjmuje dwa argumenty, aby zwrócić określoną wartość w jednowymiarowym zakresie. Tutaj zakres $B$5:$B$9 to najpierw argument i wynik, który otrzymaliśmy z obliczeń w poprzednim rozdziale (MATCH(F5,$C$5:$C$9,1)) , pozycja 4 Oznacza to, że szukamy wartości znajdującej się w pozycji 4 w $B$5:$B$9 zakres.
I,
- INDEX($C$5:$C$9,MATCH(F5,$C$5:$C$9,1)+1) staje się
-> INDEX($B$5:$B$9, 4) +1)
-> Wyjście: wtorek, 7 grudnia 2021 r.
Wyjaśnienie: Na stronie INDEX Funkcja przyjmuje dwa argumenty, aby zwrócić określoną wartość w jednowymiarowym zakresie. Tutaj zakres $C$5:$C$9 to najpierw argument i wynik, który otrzymaliśmy z obliczeń w poprzednim rozdziale (MATCH(F5,$C$5:$C$9,1)) , pozycja 4 Oznacza to, że szukamy wartości znajdującej się w pozycji 4 w $C$5:$C$9 zakres.
Aby uzyskać datę nadchodzącego wydarzenia, dodaliśmy jeden do pozycji komórki zwróconej przez MATCH Funkcja, a to dało nam pozycję komórki z następną datą wydarzenia.
Read More: Excel INDEX-MATCH Formuła, aby zwrócić wiele wartości poziomo
Podobne lektury
- INDEX MATCH Wiele kryteriów z Wildcard w programie Excel (Kompletny przewodnik)
- [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)
- INDEX+MATCH z duplikatami wartości w Excelu (3 szybkie metody)
- Jak wybrać określone dane w programie Excel (6 metod)
3. generowanie wielu wyników w oddzielnych kolumnach za pomocą formuły INDEX MATCH w Excelu
Do tej pory otrzymywaliśmy wyniki w wierszach, ale co jeśli chcemy otrzymać wyniki w oddzielne kolumny .
Rozważmy następujący zbiór danych, który składa się z trzech rodzajów zawodów reprezentujących wiele nazwisk osób.
Chcieliśmy stworzyć grupę osób na podstawie zawodu i chcieliśmy umieścić nazwiska w układzie kolumnowym zgodnie z ich profesją.
Aby wyodrębnić wiele wyników dopasowania do osobnych komórek w osobnych kolumnach, możesz wykonać małą sztuczkę z INDEX funkcja.
Dowiedzmy się, jak wyodrębnić wiele wyników dopasowania w wielu kolumnach w programie Excel za pomocą kombinacji INDEX funkcje i inne.
Kroki:
- Wybierz zawód z zakresu danych ( B5:B11 ) i umieścić dane w innej komórce, aby później wykorzystać numer referencyjny komórki (np. zawód Krykieter w Komórka E5 ).
- W innej komórce, która ma być komórką wynikową (np. Komórka F5 ), napisz następujący wzór,
=IFERROR(INDEX($C$5:$C$11,SMALL(IF($B$5:$B$11=$E5,ROW(C5:C11)-MIN(ROW(C5:C11))+1),COLUMNS($E$5:E5))),"")
Tutaj,
$C$5:$C$11 = tablica do wyszukiwania wartości lookup
$B$5:$B$11 = tablica, w której znajduje się wartość lookup
- Naciśnij Wejdź na stronę .
Zauważysz, że wynik dla danych (np. Krykieciarze ), które umieszczasz w wybranej komórce ( E5 ), pojawi się w komórce wynikowej (np. Flintoff w Komórka F5 ).
- Teraz należy przeciągnąć wiersz o Uchwyt do napełniania aby uzyskać resztę wyników tej samej wartości lookup w oddzielnych wielu kolumnach.
- Ponownie przeciągnij wiersz o Uchwyt do napełniania aby uzyskać resztę wyników różnych wartości lookup (np. Piłkarz, Zapaśnicy ) w oddzielnych wielu kolumnach.
Podział formuły:
Rozbijmy formułę, aby zrozumieć, jak otrzymaliśmy wynik.
- SMALL(IF($B$5:$B$11=$E5,ROW($C$5:$C$11)-MIN(ROW($C$5:$C$11))+1),COLUMNS($E$5:E5))
Wiemy już z poprzedniej dyskusji, jak MAŁY, JEŚLI oraz ROW funkcje współpracują ze sobą i używamy tej sztuczki również tutaj, aby wygenerować numer wiersza odpowiadający N-temu dopasowaniu. Kiedy mamy już numer wiersza, po prostu przekazujemy go do INDEX funkcja, która zwraca wartość w tym wierszu.
-> Wyjście: ( jak na zdjęciu poniżej )
- INDEX($C$5:$C$11,SMALL(IF($B$5:$B$11=$E5,ROW($C$5:$C$11)-MIN(ROW($C$5:$C$11))+1),COLUMNS($E$5:E5))) -> przekazanie numerów wierszy do INDEX funkcja wyodrębniająca wartość dla odpowiednich numerów wierszy.
-> Wyjście: ( jak na zdjęciu poniżej )
- IFERROR(INDEX($C$5:$C$11,SMALL(IF($B$5:$B$11=$E5,ROW(C5:C11)-MIN(ROW(C5:C11))+1),COLUMNS($E$5:E5))),"") -> zauważ, że kiedy kolumny zwracają wartość, która nie istnieje, rzuca a #NUM Aby zapobiec temu błędowi, zawijamy całą formułę za pomocą funkcja IFERROR aby wyłapać błędy i ustawić pusty ciąg ("") jako zwrot.
-> Wyjście: ( jak na zdjęciu poniżej )
Read More: Excel INDEX MATCH, aby zwrócić wiele wartości w jednej komórce
4. Wyodrębnij wiele wyników w osobnych wierszach za pomocą funkcji INDEX MATCH w Excelu
Jeśli zastanawiasz się nad wyodrębnieniem wielu wyników do wielu wierszy w taki sam sposób, jak to zrobiliśmy w naszej poprzedniej sekcji, to formuła jest,
=IFERROR(INDEX($C$5:$C$11,SMALL(IF($B$5:$B$11=E$4,ROW(C5:C11)-MIN(ROW(C5:C11))+1),ROWS($E$5:E5))),"")
A wszystkie inne szczegóły, takie jak Kroki i Podział Formuły są takie same jak w sekcji 3.
Kluczowe punkty, o których musisz pamiętać
- Ponieważ zakres tablicy danych do wyszukiwania wartości jest stały, nie zapomnij umieścić znaku dolar ($) znak przed numerem referencyjnym komórki tablicy.
- Podczas pracy z wartościami tablicowymi nie zapomnij wcisnąć Ctrl + Shift + Enter na klawiaturze podczas wyodrębniania wyników. Naciskając tylko Wejdź na stronę będzie działać tylko wtedy, gdy używasz Microsoft 365 .
- Po naciśnięciu Ctrl + Shift + Enter zauważysz, że pasek formuły zawiera formułę w nawiasy klamrowe {} deklarując ją jako formułę tablicową. Nie wpisuj tych nawiasy {} siebie, Excel automatycznie robi to za Ciebie.
Wniosek
Ten artykuł wyjaśnił szczegółowo, jak używać INDEX MATCH funkcje do wyodrębniania wielu wyników w Excelu. Mam nadzieję, że ten artykuł był dla Ciebie bardzo korzystny. Zapraszam do zadawania pytań, jeśli masz jakieś pytania dotyczące tematu.