Jak wyodrębnić dane z Excela na podstawie kryteriów (5 sposobów)

  • Udostępnij To
Hugh West

Czasami możemy potrzebować wyszukać pewne dane do pracy, ale kiedy zbiór danych jest ogromny, naprawdę trudno jest znaleźć to, czego szukamy. W tym artykule pokażemy Ci, jak wyodrębnić dane z programu Excel w oparciu o różne kryteria.

Pobierz szablon praktyki

Darmowy szablon Excela z ćwiczeniami można pobrać stąd.

Wyciąganie danych na podstawie kryteriów.xlsx

5 sposobów na wyodrębnienie danych z Excela na podstawie kryteriów

W tej części omówimy 5 różnych sposobów wyodrębniania danych z Excela na podstawie określonych kryteriów.

1. implementacja formuły tablicowej do ekstrakcji danych z Excela na podstawie kryteriów zakresu

Na przykładzie poniższego zbioru danych opiszemy proces wyodrębniania danych na podstawie zakresu. Załóżmy, że mamy zbiór danych studentów, z którego chcemy pobrać tylko te dane studentów, którzy otrzymali Oceny od 80 do 100 .

Kroki mające na celu wyodrębnienie danych na podstawie określonego zakresu przy użyciu. Array wzór podano poniżej.

Kroki:

  • Najpierw zapisz warunek w innych komórkach, aby później móc z nimi pracować. To znaczy, że będziemy wydobywać dane uczniów, którzy otrzymali Oceny od 80 do 100 , zapisaliśmy 80 jako wartość początkowa oraz 100 jako wartość końcowa w Komórki I4 oraz I5 odpowiednio.

Musimy również przechowywać kolumnę, z której będziemy szukać naszych zapisanych wartości. Znaczy, że znaki 80 i 100 znajdują się w Kolumna znaków który jest 3. kolumna w naszym zbiorze danych, więc zapisaliśmy 3 jako wartość kolumny w Komórka I6 .

  • Po drugie, w innej komórce, w której chcesz uzyskać wynik (my chcieliśmy nasz wynik w Komórka G11 ), napisz następujący wzór,
  • =INDEX($B$5:$E$14,SMALL(IF((INDEX($B$5:$E$14,,$I$6)=$I$4),MATCH(ROW($B$5:$E$14),ROW($B$5:$E$14))),""),ROWS(G11:$G$11)),COLUMNS($A$1:A1))

    • Po trzecie, naciśnij Ctrl + Shift + Enter na swojej klawiaturze.

    Następnie otrzymasz pierwsze wyodrębnione dane, które pasują do twojego warunku w komórce wynikowej. np. Johnny którego ID jest 3 dostał 80 Znaki w Biologia a jego rekord jest przechowywany w zbiorze danych przed innymi, więc mamy ID Johnny'ego 3 w komórce wynikowej.

    • Teraz przeciągnij kolumny i wiersze za pomocą Uchwyt do napełniania aby pobrać szczegóły tylko tych studentów, którzy dostali Oceny od 80 do 100 .

    Podział formuły

    • INDEX($B$5:$E$14,,$I$6)
      • Output: {60;30;80;55;87;95;100;42;25;18}
      • Objaśnienie: Funkcja INDEX zazwyczaj zwraca pojedynczą wartość lub całą kolumnę lub wiersz z danego zakresu komórek. 3 jest przechowywany w Komórka $I$6 , więc zwraca całą kolumnę nie 3 ( Marks kolumna) z całego zakresu zbioru danych ( $B$5:$E$14 ) jako wyjście.
    • INDEX($B$5:$E$14,,$I$6)<=$I$5 -> staje się,
      • {60;30;80;55;87;95;100;42;25;18}<=100
      • Wyjście: {TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE}
      • Wyjaśnienie: Przechowywaliśmy 100 w Komórka $I$5 . Ponieważ wszystkie wartości są mniejsze niż 100 ($I$5) więc zwraca kolumnę pełną TRUE .

    Podobnie,

    • INDEX($B$5:$E$14,,$I$6)>=$I$4 -> staje się,
      • { 60;30;80;55;87;95;100;42;25;18}>=80
      • Wyjście: {FALSE;FALSE;TRUE;FALSE;TRUE;TRUE;TRUE;FALSE;FALSE;FALSE}
      • Wyjaśnienie: Przechowywaliśmy 80 w Komórka $I$4 . So it returns TRUE gdy wartość z kolumny jest równe lub większe niż 80 ; w przeciwnym razie zwraca FALSE .
    • (INDEX($B$5:$E$14,,$I$6)=$I$4) -> staje się,
      • {TRUE;TRUE;TRUE;TRUE;TRUE;TRUE}*{FALSE;FALSE;FALSE;FALSE;TRUE;TRUE;TRUE;TRUE;FALSE;FALSE}
      • Wyjście: {0;0;1;0;1;1;0;0;0}
      • Wyjaśnienie: Wartości booleańskie mają swoje odpowiedniki liczbowe, TRUE = 1 oraz FALSE = 0 (zero) . Są one konwertowane podczas wykonywania operacji arytmetycznej w formule.
    • WIERSZ($B$5:$E$14)
      • Output: {5;6;7;8;9;10;11;12;13;14}
      • Wyjaśnienie: Funkcja ROW oblicza numer wiersza dla odwołania do komórki.
    • MATCH(ROW($B$5:$E$14),ROW($B$5:$E$14)) -> staje się,
      • MATCH({5;6;7;8;9;10;11;12;13;14},{5;6;7;8;9;10;11;12;13;14})
      • Wyjście: {1; 2; 3; 4; 5; 6; 7; 8; 9; 10}
      • Wyjaśnienie: Funkcja MATCH zwraca względną pozycję elementu w tablicy lub odwołaniu do komórki, która pasuje do określonej wartości w określonej kolejności.
    • IF((INDEX($B$5:$E$14,,$I$6)=$I$4),MATCH(ROW($B$5:$E$14),ROW($B$5:$E$14)),"") -> staje się,
      • IF( {0;0;1;0;1;1;1;0;0;0}), {1; 2; 3; 4; 5; 6; 7; 8; 9; 10},"")
      • Wyjście: {""; ""; 3; ""; 5; 6; 7; ""; ""}
      • Wyjaśnienie: Funkcja IF zwraca jedną wartość, jeśli test logiczny jest TRUE i inną wartość, jeśli test logiczny jest FALSE .
    • SMALL(IF((INDEX($B$5:$E$14,,$I$6)=$I$4),MATCH(ROW($B$5:$E$14),ROW($B$5:$E$14)),""),ROWS(G11:$G$11)) -> staje się,
      • SMALL({""; ""; 3; ""; 5; 6; 7; ""; ""},ROWS(G11:$G$11)) -> staje się,
      • SMALL({""; ""; 3; ""; 5; 6; 7; ""; ""},1)
      • Wyjście: 3
      • Wyjaśnienie: Funkcja SMALL zwraca k-ta najmniejsza wartość z grupy liczb. 3 jest najmniejszy w tej grupie.
    • INDEX($B$5:$E$14,SMALL(IF((INDEX($B$5:$E$14,,$I$6)=$I$4),MATCH(ROW($B$5:$E$14),ROW($B$5:$E$14)),""),ROWS(G11:$G$11)),COLUMNS($A$1:A1)) -> staje się,
      • INDEX($B$5:$E$14,3,,1)
      • Wyjście: {3; "Jaś", 80, "Biologia"}
      • Wyjaśnienie: Na stronie INDEX Funkcja zwraca wartość z zakresu komórek( $B$5:$E$14 ), określona przez wartość na podstawie numeru wiersza i kolumny.

    Read More: Jak wyodrębnić dane z komórek w Excelu (5 metod)

    2. implementacja formuły tablicowej do ekstrakcji danych z Excela na podstawie wielu warunków

    W powyższym punkcie wyodrębniliśmy dane na podstawie danego zakresu. Jednak w tym punkcie pokażemy jak wyodrębnić dane na podstawie wielu warunków.

    Spójrz na ten sam zestaw danych co poprzednio, ale tutaj zamiast przechowywać zakres wartości (znaki 80 do 100) jako warunek, przechowujemy wiele warunków, takich jak pobieranie danych studentów z zarówno wydziały chemii jak i biologii .

    Kroki mające na celu wyodrębnienie danych na podstawie wielu warunków przy użyciu Array wzór podano poniżej.

    Kroki:

    • Po pierwsze, przechowuj warunki w innych komórkach, aby później z nimi pracować. To znaczy, że jako że będziemy wydobywać dane uczniów z Chemia oraz Biologia działy, przechowywaliśmy Chemia oraz Biologia w Komórki H5 oraz H6 odpowiednio.
    • Po drugie, w innej komórce, w której chcesz uzyskać wynik (my chcieliśmy nasz wynik w Komórka G11 ), napisz następujący wzór,
    =INDEX($B$5:$E$14, SMALL(IF(COUNTIF($H$5:$H$6,$E$5:$E$14), MATCH(ROW($B$5:$E$14), ROW($B$5:$E$14)), ""), ROWS(G11:$G$11)), COLUMNS($B$5:B5))

    • Po trzecie, naciśnij Ctrl + Shift + Enter na swojej klawiaturze.

    Później otrzymasz pierwsze wyodrębnione dane, które pasują do twoich warunków w komórce wyników.Np. Johnny którego ID jest 3 jest z Wydział Biologii a jego rekord jest przechowywany w zbiorze danych przed innymi, więc mamy ID Johnny'ego 3 w komórce wynikowej.

    • Teraz przeciągnij kolumny i wiersze za pomocą Uchwyt do napełniania aby pobrać szczegóły tylko tych studentów, którzy są z Dział z Chemia oraz Biologia .

    Podział formuły

    • COUNTIF($H$5:$H$6,$E$5:$E$14) -> staje się,
      • COUNTIF({"Chemia"; "Biologia"},{"Matematyka"; "Fizyka"; "Biologia"; "Chemia"; "Fizyka"; "Matematyka"; "Chemia"; "Matematyka"; "Biologia"}
      • Wyjście: {0;0;1;1;0;0;1;0;1}
      • Wyjaśnienie: Funkcja COUNTIF pozwala na identyfikację komórek w zakresie $H$5:$H$6 który równa się $E$5:$E$14 .
    • IF(COUNTIF($H$5:$H$6,$E$5:$E$14), MATCH(ROW($B$5:$E$14), ROW($B$5:$E$14)), "") -> staje się,
      • IF({0;0;1;1;0;0;1},MATCH(ROW($B$5:$E$14), ROW($B$5:$E$14)), "") -> staje się,
      • IF({0;0;1;1;0;0;0;1;0;1},{ 1; 2; 3; 4; 5; 6; 7; 8; 9; 10},"")
      • Wyjście: {""; ""; 3; 4; ""; ""; 8; "";10}
      • Wyjaśnienie: Na stronie JEŚLI Funkcja ma trzy argumenty, pierwszy z nich musi być wyrażeniem logicznym. Jeśli wyrażenie to ma wartość TRUE to dzieje się jedna rzecz (argument 2) i jeśli FALSE dzieje się inna rzecz (argument 3). Wyrażenie logiczne zostało obliczone w kroku 1, TRUE równa się 1 oraz FALSE równa się 0 (zero) . Wiersz nie 3, 4, 8 oraz 10 ocenić TRUE (1) .
    • SMALL(IF(COUNTIF($H$5:$H$6,$E$5:$E$14), MATCH(ROW($B$5:$E$14), ROW($B$5:$E$14)), ""), ROWS(G11:$G$11)) -> staje się,
      • SMALL({""; ""; 3; 4; ""; ""; 8; "";10},ROWS(G11:$G$11)) -> staje się,
      • SMALL({""; ""; 3; 4; ""; ""; 8; "";10},1)
      • Wyjście: 3
      • Wyjaśnienie: Na stronie MAŁA funkcja zwraca k-tego najmniejsza wartość z grupy liczb. 3 jest najmniejszy w tej grupie.
    • INDEX($B$5:$E$14, SMALL(IF(COUNTIF($H$5:$H$6,$E$5:$E$14), MATCH(ROW($B$5:$E$14), ROW($B$5:$E$14)), ""), ROWS(G11:$G$11)), COLUMNS($B$5:B5)) -> staje się,
      • INDEX($B$5:$E$14, 3, COLUMNS($B$5:B5)) -> staje się,
      • INDEX($B$5:$E$14, 3, 1)
      • Wyjście: {3; "Jaś", 80, "Biologia"}
      • Wyjaśnienie: Na stronie INDEX Funkcja zwraca wartość z zakresu komórek( $B$5:$E$14 ), określona przez wartość na podstawie numeru wiersza i kolumny.

    Read More: Zwróć wiele wartości w programie Excel na podstawie jednego kryterium (3 opcje)

    3) Użycie narzędzia polecenia filtrowania do wyodrębnienia danych z programu Excel na podstawie kryteriów zakresu

    Narzędzie polecenia Filtr w programie Excel jest jednym z najczęściej używanych i skutecznych narzędzi do wyodrębnić określone dane w oparciu o różne kryteria.

    Spójrz na poniższy zbiór danych. Poprzednio użyliśmy go jako naszego przykładu, aby wyodrębnić dane studentów, którzy otrzymali oceny od 80 do 100 poprzez zastosowanie formuły Array. Ale w tym rozdziale dowiemy się, jak to zrobić poprzez wykorzystanie Narzędzie "Filtr" w programie Excel .

    Poniżej podano kroki wyodrębnienia danych na podstawie określonego zakresu za pomocą Filtra Excela.

    Kroki:

    • Najpierw wybierz tylko nagłówek zbioru danych.
    • Po drugie, przejdź do Dane -> Filtr .

    • Po trzecie, wstawi przycisk rozwijany w każdym nagłówku nazwy zbioru danych.

    • Następnie, ponieważ chcemy wyodrębnić dane na podstawie znaków, więc klikamy na przycisk rozwijany obok przycisku Marks kolumna.
    • Następnie z listy rozwijanej należy wybrać Liczba filtrów -> Między... (ponownie, ponieważ wyciągamy dane od 80 do 100 , więc wybieramy opcję Między . Możesz wybrać dowolne inne opcje z listy według swoich kryteriów).

    • Teraz, z wyskakującego okienka Własny AutoFiltr pole, wybierz 80 od lista rozwijana który pojawi się po prostu po kliknięciu na przycisk rozwijany u boku jest większa lub równa etykietę, i wybierz 100 w polu etykiety jest mniejsza lub równa .
    • Później kliknij OK .

    Na koniec otrzymasz wszystkie szczegóły tylko dla studentów, którzy dostali Oceny od 80 do 100 .

    Read More: Jak wyodrębnić dane z obrazu do programu Excel (z szybkimi krokami)

    Podobne lektury

    • Jak importować dane do Excela z innego pliku Excela (2 sposoby)
    • Kod VBA do konwersji pliku tekstowego do Excela (7 metod)
    • Jak przekonwertować plik tekstowy do Excela automatycznie (3 odpowiednie sposoby)
    • Konwersja Excel do pliku tekstowego z delimiterem (2 proste podejścia)
    • Jak zaimportować plik tekstowy z wieloma delimiterami do programu Excel (3 metody)

    4) Wykorzystanie zaawansowanego filtra do ekstrakcji danych z Excela na podstawie kryteriów zakresu

    Jeśli nie chcesz przechodzić przez wiele kroków pokazanych w sekcji Filter, możesz użyć Filtr zaawansowany opcja w Excelu umożliwiająca wyodrębnienie danych na podstawie podanego zakresu.

    Aby skorzystać z opcji zaawansowanego filtrowania w programie Excel, należy zdefiniować warunek w arkuszu, który później zostanie wykorzystany. Zobacz poniższy obrazek, na którym definiujemy nasz warunek wyodrębnienia szczegółów dotyczących studentów Oceny 80 do 100 w dwóch różnych komórkach jako >=80 oraz <=100 pod adresem Marks i będziemy używać numery referencyjne komórek tych komórek w dalszej części naszej pracy.

    Poniżej podano kroki, aby wyodrębnić dane na podstawie określonego zakresu za pomocą filtra zaawansowanego programu Excel.

    Kroki:

    • Po pierwsze, wybierz cała tabela danych .
    • Po drugie, wejdź na stronę Dane -> Zaawansowane .

    • Na koniec zobaczysz zakres swoich wybrane dane w polu obok Zakres listy opcja.
    • Następnie, w polu obok Zakres kryteriów , wybierz komórki spełniające określone warunki Zobaczysz, że nazwa arkusza zostanie tam automatycznie wygenerowana, po numerach referencyjnych komórek, w których przechowywane są predefiniowane warunki.
    • Na koniec kliknij OK .

    W rezultacie otrzymasz wszystkie szczegóły tylko dla studentów, którzy otrzymali Oceny od 80 do 100 .

    Read More: Wyciągnij przefiltrowane dane w Excelu do innego arkusza (4 metody)

    5) Wyciąganie danych z tabeli zdefiniowanej w Excelu na podstawie kryteriów zakresu

    Możesz wyodrębnić dane z Tabela zdefiniowana w programie Excel z arkusza Excela przy użyciu Filtr opcja.

    Rozważmy następujący niezorganizowany zbiór danych, który najpierw zdefiniujemy jako tabelę Excela, a następnie wyodrębnimy z niego dane.

    Poniżej podano kroki, aby wyodrębnić dane z tabeli zdefiniowanej w programie Excel na podstawie określonego zakresu.

    Kroki:

    • Na początku należy wybrać dowolna komórka z twojego zbioru danych i naciśnij Ctrl T .

    • Następnie, wyskakujące okienko Utwórz tabelę Pojawi się okienko z napisem zakres zbioru danych jako wartości Zachowaj pole wyboru Moja tabela ma nagłówki zaznaczono.
    • Później kliknij OK .

    To będzie automatyczne generowanie tabeli na podstawie twojego zestawu danych z przycisk rozwijany wraz z nagłówkami.

    • Następnie, podobnie jak w sposób, który pokazaliśmy Ci wcześniej, kliknij na przycisk rozwijany obok przycisku Marks kolumna, ponieważ chcemy wyodrębnić dane na podstawie Znaków.
    • Później, z listy rozwijanej, wybierz Liczba filtrów -> Między... (ponownie, ponieważ wyciągamy dane od 80 do 100 , wybieramy opcję Między . Możesz wybrać dowolne inne opcje z listy według swoich kryteriów).

    • Teraz, z wyskakującego okienka Własny AutoFiltr pole, wybierz 80 od lista rozwijana który pojawi się po prostu po kliknięciu na przycisk rozwijany u boku jest większa lub równa etykietę, i wybierz 100 w polu etykiety jest mniejsza lub równa .
    • Na koniec kliknij OK .

    W końcu otrzymasz zdefiniowaną w Excelu tabelę zawierającą tylko szczegóły dotyczące studentów, którzy otrzymali Oceny od 80 do 100 .

    Read More: Jak wyodrębnić dane z tabeli na podstawie wielu kryteriów w Excelu

    Pamiętaj

    • Ponieważ zakres tablicy danych do wyszukiwania wartości jest stały, nie zapomnij umieścić 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

    W tym artykule dowiedzieliśmy się, jak wyodrębnić dane z Excela na podstawie różnych kryteriów. Mam nadzieję, że ten artykuł był dla Ciebie bardzo korzystny. Zapraszam do zadawania wszelkich pytań, jeśli masz w odniesieniu do tematu.

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