Hoe gegevens uit Excel extraheren op basis van criteria (5 manieren)

  • Deel Dit
Hugh West

Soms moeten we zoeken naar bepaalde gegevens om mee te werken. Maar als de dataset enorm groot is, is het echt moeilijk om te vinden wat we zoeken. In dit artikel laten we zien hoe je gegevens uit Excel halen op basis van verschillende criteria.

Praktijksjabloon downloaden

U kunt het gratis oefensjabloon in Excel hier downloaden.

Gegevens uitpakken op basis van criteria.xlsx

5 manieren om gegevens op basis van criteria uit Excel te halen

In dit deel worden 5 verschillende manieren besproken om gegevens uit Excel te halen op basis van bepaalde criteria.

1. Matrixformule implementeren om gegevens uit Excel te halen op basis van bereikcriteria

Met de volgende dataset als voorbeeld zullen we u het proces beschrijven van het extraheren van gegevens op basis van bereik. Stel, we hebben een dataset met studentgegevens, waaruit we alleen de studentgegevens willen halen die Cijfers van 80 tot 100 .

De stappen om gegevens te extraheren op basis van een bepaald bereik met behulp van de Array formule worden hieronder gegeven.

Stappen:

  • Sla eerst de voorwaarde op in andere cellen om daar later mee te werken. Dat betekent dat we de gegevens van studenten die Scores van 80 tot 100 hebben we 80 als beginwaarde en 100 als eindwaarde in de Cellen I4 en I5 respectievelijk.

Ook moeten we de kolom opslaan van waaruit we onze opgeslagen waarden zullen zoeken. Dat wil zeggen, de markeringen 80 en 100 staan in de Markeringen kolom die de 3e kolom in onze dataset, dus hebben we 3 als de kolomwaarde in Cel I6 .

  • Ten tweede, in een andere cel, waar u het resultaat wilt hebben (wij wilden ons resultaat in de Cel G11 ), schrijf de volgende formule,
  • =INDEX($B$5:$E$14,SMALL(IF((INDEX($B$5:$E$14,,$I$6)=$I$4),MATCH(RIJ($B$5:$E$14),RIJ($B$5:$E$14)),""),RIJEN(G11:$G$11)),KOLOMMEN($A$1:A1))

    • Ten derde, druk op Ctrl + Shift + Enter op je toetsenbord.

    Dan krijgt u de eerste gegevens die aan uw voorwaarde voldoen in de resultaatcel. Bijv. Johnny waarvan ID is 3 kreeg 80 punten in Biologie en zijn record is opgeslagen in de dataset voor de anderen, dus we hebben... Johnny's ID 3 in de resultaatcel.

    • Sleep nu de kolommen en rijen door Vulgreep om de gegevens op te halen van alleen de studenten die Scores van 80 tot 100 .

    Formuleverdeling

    • INDEX($B$5:$E$14,,$I$6)
      • Output: {60;30;80;55;87;95;100;42;25;18}
      • Uitleg: De INDEX-functie geeft gewoonlijk een enkele waarde of een hele kolom of rij van een bepaald celbereik. 3 wordt opgeslagen in de Cel $I$6 dus het geeft de hele kolom geen 3 ( Marks kolom) van het hele bereik van de dataset ( $B$5:$E$14 ) als uitvoer.
    • INDEX($B$5:$E$14,,$I$6)<=$I$5 -> wordt,
      • {60;30;80;55;87;95;100;42;25;18}<=100
      • Uitgang: {TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE}.
      • Uitleg: We hebben opgeslagen 100 in de Cel $I$5 Aangezien alle waarden kleiner zijn dan 100 ($I$5) zodat het een kolom vol met WARE .

    Insgelijks,

    • INDEX($B$5:$E$14,,$I$6)>=$I$4 -> wordt,
      • { 60;30;80;55;87;95;100;42;25;18}>=80
      • Uitvoer: {FALSE;FALSE;TRUE;FALSE;TRUE;TRUE;TRUE;FALSE;FALSE;FALSE}
      • Uitleg: We hebben opgeslagen 80 in de Cel $I$4 Dus het retourneert WARE wanneer de waarde van de kolom gelijk aan of groter dan 80 anders geeft het FALSE .
    • (INDEX($B$5:$E$14,,$I$6)=$I$4) -> wordt,
      • {TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE}*{FALSE;FALSE;TRUE;TRUE;TRUE;TRUE;FALSE;FALSE;FALSE}
      • Uitvoer: {0;0;1;0;1;1;0;0;0}
      • Uitleg: Booleaanse waarden hebben numerieke equivalenten, TRUE = 1 en FALSE = 0 (nul) Ze worden omgezet wanneer een rekenkundige bewerking in een formule wordt uitgevoerd.
    • RIJ($B$5:$E$14)
      • Output: {5;6;7;8;9;10;11;12;13;14}
      • Uitleg: De ROW-functie berekent het rijnummer van een celverwijzing.
    • MATCH(ROW($B$5:$E$14),ROW($B$5:$E$14)) -> wordt,
      • MATCH({5;6;7;8;9;10;11;12;13;14},{5;6;7;8;9;10;11;12;13;14})
      • Uitvoer: {1; 2; 3; 4; 5; 6; 7; 8; 9; 10}
      • Uitleg: De MATCH-functie geeft de relatieve positie van een item in een matrix of celverwijzing die overeenkomt met een gespecificeerde waarde in een specifieke volgorde.
    • IF((INDEX($B$5:$E$14,,$I$6)=$I$4),MATCH(ROW($B$5:$E$14),ROW($B$5:$E$14)),"") -> wordt,
      • ALS( {0;0;1;0;1;1;1;0;0;0}), {1; 2; 3; 4; 5; 6; 7; 8; 9; 10},"")
      • Output: {""; ""; 3; ""; 5; 6; 7; ""; ""; ""}
      • Uitleg: De IF-functie geeft één waarde terug als de logische test WARE en een andere waarde als de logische test 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)) -> wordt,
      • SMALL({""; ""; 3; ""; 5; 6; 7; ""; ""; ""},ROWS(G11:$G$11)) -> wordt,
      • SMALL({""; ""; 3; ""; 5; 6; 7; ""; ""; ""},1)
      • Uitgang: 3
      • Uitleg: De KLEINE functie geeft de k-de kleinste waarde van een groep getallen. 3 is de kleinste in deze groep.
    • INDEX($B$5:$E$14,SMALL(IF((INDEX($B$5:$E$14,,$I$6)=$I$4),MATCH(RIJ($B$5:$E$14),RIJ($B$5:$E$14)),""),RIJEN(G11:$G$11)),KOLOMMEN($A$1:A1)) -> wordt,
      • INDEX($B$5:$E$14,3,,1)
      • Output: {3; "Johnny", 80, "Biologie"}
      • Uitleg: De INDEX functie geeft een waarde terug uit een celbereik ( $B$5:$E$14 ), gespecificeerd door de waarde gebaseerd op een rij- en kolomnummer.

    Lees meer: Hoe gegevens uit een cel in Excel halen (5 methoden)

    2. Matrixformule implementeren om gegevens uit Excel te halen op basis van meerdere voorwaarden

    In het bovenstaande deel hebben we gegevens geëxtraheerd op basis van een bepaald bereik. Maar in dit deel laten we zien hoe u gegevens kunt extraheren op basis van meerdere voorwaarden.

    Kijk naar dezelfde dataset als eerder, maar hier hebben we in plaats van een reeks waarden (cijfers 80 tot 100) als voorwaarde op te slaan, meerdere voorwaarden opgeslagen, zoals het ophalen van de gegevens van studenten uit de afdelingen scheikunde en biologie .

    De stappen om gegevens te extraheren op basis van meerdere voorwaarden met behulp van de Array formule worden hieronder gegeven.

    Stappen:

    • Sla eerst de voorwaarden op in andere cellen om daar later mee te werken. Dat betekent dat als we de gegevens van studenten gaan halen uit Chemie en Biologie afdelingen, hebben we opgeslagen Chemie en Biologie in de Cellen H5 en H6 respectievelijk.
    • Ten tweede, in een andere cel, waar u het resultaat wilt hebben (wij wilden ons resultaat in de Cel G11 ), schrijf de volgende formule,
    =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))

    • Ten derde, druk op Ctrl + Shift + Enter op je toetsenbord.

    Later krijgt u in de resultaatcel de eerste gegevens die aan uw voorwaarden voldoen. Bijv. Johnny waarvan ID is 3 is van Afdeling Biologie en zijn record is opgeslagen in de dataset voor de anderen, dus we hebben... Johnny's ID 3 in de resultaatcel.

    • Sleep nu de kolommen en rijen door Vulgreep om de gegevens op te halen van alleen de studenten die van de Afdeling van Chemie en Biologie .

    Formuleverdeling

    • COUNTIF($H$5:$H$6,$E$5:$E$14) -> wordt,
      • COUNTIF({"Scheikunde";"Biologie"},{"Wiskunde";"Natuurkunde";"Biologie";"Scheikunde";"Natuurkunde";"Natuurkunde";"Scheikunde";"Wiskunde";"Biologie"}.
      • Uitvoer: {0;0;1;1;0;0;1;0;1}
      • Uitleg: De functie COUNTIF maakt het mogelijk cellen te identificeren in het bereik $H$5:$H$6 die gelijk is aan $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), "") -> wordt,
      • IF({0;0;1;1;0;0;1;0;1},MATCH(ROW($B$5:$E$14), ROW($B$5:$E$14)), "") -> wordt,
      • IF({0;0;1;1;0;0;0;1;0;1},{ 1; 2; 3; 4; 5; 6; 7; 8; 9; 10},"")
      • Uitvoer: {""; ""; 3; 4; ""; ""; 8; "";10}
      • Uitleg: De ALS functie heeft drie argumenten, waarvan het eerste een logische uitdrukking moet zijn. Als de uitdrukking evalueert naar WARE dan gebeurt er één ding (argument 2) en als FALSE gebeurt er iets anders (argument 3). De logische uitdrukking werd berekend in stap 1, WARE is gelijk aan 1 en FALSE is gelijk aan 0 (nul) . rij nee 3, 4, 8 en 10 evalueren WAAR (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)) -> wordt,
      • SMALL({""; ""; 3; 4; ""; ""; 8; "";10},ROWS(G11:$G$11)) -> wordt,
      • SMALL({""; ""; 3; 4; ""; ""; 8; "";10},1)
      • Uitgang: 3
      • Uitleg: De KLEIN functie geeft de k-de kleinste waarde van een groep getallen. 3 is de kleinste in deze groep.
    • 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)) -> wordt,
      • INDEX($B$5:$E$14, 3, KOLOMMEN($B$5:B5)) -> wordt,
      • INDEX($B$5:$E$14, 3, 1)
      • Output: {3; "Johnny", 80, "Biologie"}
      • Uitleg: De INDEX functie retourneert een waarde uit een celbereik( $B$5:$E$14 ), gespecificeerd door de waarde gebaseerd op een rij- en kolomnummer.

    Lees meer: Meerdere waarden weergeven in Excel op basis van één criterium (3 opties)

    3. Filteropdracht gebruiken om gegevens uit Excel te extraheren op basis van bereikcriteria

    De filteropdracht in Excel is een van de meest gebruikte en doeltreffende hulpmiddelen om specifieke gegevens ophalen op basis van verschillende criteria.

    Kijk naar de volgende dataset. Eerder gebruikten we die als voorbeeld om de details van studenten met cijfers tussen 80 en 100 te extraheren door de Array-formule te implementeren. Maar in dit deel zullen we leren hoe we dat kunnen doen door gebruik te maken van Excel's filtertool .

    De stappen om gegevens te extraheren op basis van een bepaald bereik met behulp van Excel's Filter worden hieronder gegeven.

    Stappen:

    • Selecteer eerst alleen de kop van de dataset.
    • Ten tweede, ga naar Gegevens -> Filter .

    • Ten derde zal het een uitklapknop in elke kopnaam van de dataset.

    • Dan, aangezien we gegevens willen extraheren op basis van de Merken, dus klik op de drop-downknop naast de merken column.
    • Selecteer vervolgens in de vervolgkeuzelijst Nummer Filters -> Tussen... (nogmaals, aangezien we gegevens tussen 80 en 100 dus selecteren we de optie Tussen U kunt andere opties uit de lijst selecteren volgens uw criteria).

    • Nu, van de pop-up Aangepaste AutoFilter vak, selecteer 80 van de keuzelijst die verschijnt door simpelweg te klikken op de uitklapknop naast is groter dan of gelijk aan label, en selecteer 100 in de labelbox is kleiner dan of gelijk aan .
    • Klik later op OK .

    Tenslotte krijgt u alle details alleen voor de studenten die Scores van 80 tot 100 .

    Lees meer: Hoe gegevens uit een afbeelding in Excel te extraheren (met snelle stappen)

    Vergelijkbare lezingen

    • Hoe gegevens importeren in Excel vanuit een ander Excel-bestand (2 manieren)
    • VBA-code om tekstbestand om te zetten naar Excel (7 methoden)
    • Hoe tekstbestand automatisch converteren naar Excel (3 geschikte manieren)
    • Excel omzetten naar tekstbestand met scheidingsteken (2 eenvoudige benaderingen)
    • Tekstbestand met meerdere scheidingstekens importeren in Excel (3 methoden)

    4. Geavanceerd filter gebruiken om gegevens uit Excel te halen op basis van bereikcriteria

    Als u niet de vele stappen wilt doorlopen die in de sectie Filter worden getoond, kunt u de Geavanceerd filter optie in Excel om gegevens te extraheren op basis van een bepaald bereik.

    Om de geavanceerde filteroptie in Excel te gebruiken, moet u de voorwaarde definiëren in uw werkblad om later te gebruiken. Zie de volgende afbeelding waar we onze voorwaarde definiëren voor het extraheren van leerlinggegevens van Markeringen 80 tot 100 in twee verschillende cellen als >=80 en <=100 onder Marks en we zullen de cel referentienummers van die cellen later in ons werk.

    Hieronder vindt u de stappen om gegevens te extraheren op basis van een bepaald bereik met behulp van Excel's Geavanceerde filter.

    Stappen:

    • Selecteer eerst de hele gegevenstabel .
    • Ten tweede, ga naar Gegevens -> Geavanceerd .

    • Tenslotte ziet u het bereik van uw geselecteerde gegevens in het vakje naast de Lijst bereik optie.
    • Dan, in het vakje naast de Criteria selecteer de cellen die de gedefinieerde voorwaarden dragen U zult zien dat de naam van het werkblad automatisch wordt gegenereerd, na de celreferentienummers van de vooraf gedefinieerde voorwaarden.
    • Klik tenslotte op OK .

    Daardoor krijgt u alle details alleen voor de studenten die Scores van 80 tot 100 .

    Lees meer: Gefilterde gegevens in Excel uitpakken naar een ander blad (4 methoden)

    5. Gegevens uit Excel gedefinieerde tabel halen op basis van bereikcriteria

    U kunt gegevens uit een Excel gedefinieerde tabel van uw Excel-werkblad met behulp van de Filter optie.

    Beschouw de volgende ongeorganiseerde dataset, die we eerst zullen definiëren als een Excel-tabel en er vervolgens gegevens uit zullen halen.

    De stappen om gegevens te extraheren uit een in Excel gedefinieerde tabel op basis van een bepaald bereik worden hieronder gegeven.

    Stappen:

    • Selecteer in het begin elke cel van uw dataset en druk op Ctrl T .

    • Dan, een pop-up Tabel aanmaken Er verschijnt een kader met de bereik van uw dataset als waarden Houd het selectievakje Mijn tabel heeft koppen gemarkeerd.
    • Klik later op OK .

    Het zal automatisch een tabel genereren gebaseerd op uw dataset met een uitklapknop samen met de headers.

    • Dan klikt u, zoals we u eerder lieten zien, op de drop-downknop naast de merken kolom, omdat we gegevens willen extraheren op basis van de Merken.
    • Selecteer later in de vervolgkeuzelijst Nummer Filters -> Tussen... (nogmaals, aangezien we gegevens tussen 80 en 100 kiezen we de optie Tussen U kunt andere opties uit de lijst selecteren volgens uw criteria).

    • Nu, van de pop-up Aangepaste AutoFilter vak, selecteer 80 van de keuzelijst die verschijnt door simpelweg te klikken op de uitklapknop naast is groter dan of gelijk aan label, en selecteer 100 in de labelbox is kleiner dan of gelijk aan .
    • Klik tenslotte op OK .

    Uiteindelijk krijgt u een in Excel gedefinieerde tabel met alleen de details van studenten die Scores van 80 tot 100 .

    Lees meer: Gegevens uit een tabel halen op basis van meerdere criteria in Excel

    Houd in gedachten

    • Aangezien het bereik van de array van de gegevenstabel om de waarde te zoeken vast is, moet u niet vergeten de dollar ($) teken voor het celreferentienummer van de matrixtabel.
    • Wanneer u met matrixwaarden werkt, vergeet dan niet op Ctrl + Shift + Enter op uw toetsenbord tijdens het extraheren van resultaten. Als u alleen op Ga naar werkt alleen als u Microsoft 365 .
    • Na het indrukken van Ctrl + Shift + Enter ziet u dat de formulebalk de formule insluit in accolades {} en verklaart het als een matrixformule. Typ niet die haakjes zelf, Excel doet dit automatisch voor u.

    Conclusie

    In dit artikel hebben we geleerd hoe we gegevens uit Excel kunnen halen op basis van verschillende criteria. Ik hoop dat dit artikel nuttig voor u is geweest. Stel gerust uw vragen over dit onderwerp.

    Hugh West is een zeer ervaren Excel-trainer en -analist met meer dan 10 jaar ervaring in de branche. Hij heeft een bachelor in Accounting en Finance en een master in Business Administration. Hugh heeft een passie voor lesgeven en heeft een unieke lesaanpak ontwikkeld die gemakkelijk te volgen en te begrijpen is. Zijn deskundige kennis van Excel heeft duizenden studenten en professionals over de hele wereld geholpen hun vaardigheden te verbeteren en uit te blinken in hun carrière. Via zijn blog deelt Hugh zijn kennis met de wereld en biedt hij gratis Excel-tutorials en online trainingen aan om individuen en bedrijven te helpen hun volledige potentieel te bereiken.