Inhoudsopgave
De zelfstudie laat zien hoe Advanced Filter in Excel wordt gebruikt en geeft een aantal niet-triviale voorbeelden van criteria om een hoofdlettergevoelig filter te maken, overeenkomsten en verschillen tussen twee kolommen te vinden, records te extraheren die overeenkomen met een kleinere lijst, en meer.
In ons vorige artikel hebben we verschillende aspecten van Excel Advanced Filter besproken en hoe u het kunt gebruiken om rijen te filteren met zowel AND als OR logica. Nu u de basis kent, laten we eens kijken naar meer complexe criteria bereik voorbeelden die nuttig kunnen zijn voor uw werk.
Opstellen van een op formules gebaseerd criteriabereik
Aangezien de meeste voorbeelden van criteriabereiken die in deze handleiding worden besproken verschillende formules zullen bevatten, laten we beginnen met het definiëren van de essentiële regels om ze goed in te stellen. Geloof me, dit kleine stukje theorie zal u veel tijd besparen en u de hoofdpijn besparen van het oplossen van uw complexe criteriabereiken die meerdere voorwaarden op basis van formules bevatten.
- De formule die u gebruikt in het criteriabereik moet evalueren naar WARE of FALSE .
- Het criteriabereik moet ten minste 2 cellen bevatten: formulecel en header cell.
- De kopregelcel van de op de formule gebaseerde criteria moet leeg zijn of verschillen van de koppen van de tabel (lijstbereik).
- Voor de formule die moet worden geëvalueerd voor elke rij in het lijstbereik verwijzen naar de bovenste cel met gegevens met behulp van een relatieve verwijzing zoals A1.
- Om de formule alleen voor een specifieke cel of reeks cellen verwijst naar die cel of dat bereik met een absolute verwijzing zoals $A$1.
- Bij verwijzing naar de lijstbereik in de formule, altijd absolute celverwijzingen gebruiken.
- Wanneer u meerdere voorwaarden opgeeft, voert u alle criteria op dezelfde rij in om ze samen te voegen met een EN operator, en zet elk criterium op een aparte rij om ze te verbinden met de OF operator.
Excel Advanced Filter criteria bereik voorbeelden
De volgende voorbeelden leren u hoe u uw eigen filters in Excel kunt maken voor complexere taken die niet kunnen worden uitgevoerd met het gewone Excel AutoFilter.
Hoofdlettergevoelig filter voor tekstwaarden
Net als Excel AutoFilter is de Geavanceerde Filtertool van nature hoofdletterongevoelig, wat betekent dat het geen onderscheid maakt tussen hoofdletters en kleine letters bij het filteren van tekstwaarden. U kunt echter gemakkelijk hoofdlettergevoelig zoeken door de EXACT-functie te gebruiken in de geavanceerde filtercriteria.
Om bijvoorbeeld rijen te filteren die Banaan en negeert BANANA en banaan voer de volgende formule in het criteriabereik in:
=EXACT(B5, "Banaan")
Waarbij B de kolom is die de artikelnamen bevat, en rij 5 de eerste gegevensrij is.
En pas dan Excel Advanced Filter toe door te klikken op de knop Geavanceerd knop op de Gegevens en configureer de Lijst bereik en Criteria zoals in de onderstaande schermafbeelding. Let erop dat de Criteria omvat 2 cellen - de kopregelcel en de formulecel .
Opmerking. De bovenstaande afbeelding en alle andere schermafbeeldingen in deze handleiding tonen formules in de cellen van het criteriabereik, maar alleen voor de duidelijkheid. In uw echte werkbladen moet de formulecel TRUE of FALSE opleveren, afhankelijk van of de eerste rij gegevens aan de criteria voldoet of niet:
Filter waarden boven of onder het gemiddelde in een kolom
Bij het filteren van numerieke waarden wilt u vaak alleen de cellen weergeven die boven of onder een gemiddelde waarde in de kolom liggen. Bijvoorbeeld:
Om rijen met subtotaal te filteren boven het gemiddelde gebruik de volgende formule in het criteriabereik:
=F5>AVERAGE($F$5:$F$50)
Om rijen met subtotaal te filteren onder het gemiddelde gebruik dan de volgende formule:
=F5
Let erop dat we een relatieve verwijzing gebruiken om te verwijzen naar de bovenste cel met gegevens (F5), en absolute verwijzingen om het hele bereik te definiëren waarvoor u het gemiddelde wilt berekenen, met uitzondering van de kolomkop ($F$5:$F$50).
De volgende schermafbeelding toont de bovenstaande gemiddelde formule in actie:
Degenen onder u die vertrouwd zijn met Excel Getallenfilters vragen zich misschien af waarom iemand de moeite zou nemen een geavanceerd filter te gebruiken terwijl de ingebouwde getallenfilters al de Boven het gemiddelde. en Onder het gemiddelde opties? Dat klopt, maar de ingebouwde Excel filters kunnen niet worden gebruikt met de OR logica!
Dus, om dit voorbeeld verder te brengen, laten we rijen filteren waar Subtotaal (kolom F) OF September verkoop (kolom E) boven het gemiddelde ligt. Hiervoor stelt u het criteriabereik in met de OR-logica door elke voorwaarde op een aparte rij in te voeren. Als resultaat krijgt u een lijst met items met de bovengemiddelde waarden in kolom E of F:
Filter rijen met spaties of zonder spaties
Zoals iedereen weet, heeft Excel Filter een ingebouwde optie voor het filteren van lege cellen. Door het selecteren of deselecteren van de (Blanco's) selectievakje in het menu AutoFilter, kunt u alleen die rijen weergeven die lege of niet-lege cellen hebben in een of meer kolommen. Het probleem is dat het ingebouwde Excel-filter voor lege cellen alleen kan werken met de EN-logica.
Als u lege of niet-blanke cellen wilt filteren met de OR-logica, of de voorwaarden voor lege/niet-blanke cellen wilt gebruiken in combinatie met andere criteria, stel dan een geavanceerd bereik met filtercriteria in met een van de volgende formules:
Filter blanco's :
top_cel =""Filter niet-blanco's:
top_cel ""Filteren van lege cellen met de OR-logica
Om rijen te filteren die een lege cel hebben in kolom A of B, of in beide kolommen, configureert u het bereik van de geavanceerde filtercriteria op deze manier:
=A6=""
=B6=""
Waarbij 6 de bovenste rij gegevens is.
Niet-blanco cellen filteren met zowel OR- als AND-logica
Om beter te begrijpen hoe Excel's geavanceerde filter werkt met meerdere criteria, filteren we rijen in onze voorbeeldtabel met de volgende voorwaarden:
- Ofwel Regio (kolom A) of Item (kolom B) mag niet blanco zijn, en
- Subtotaal (kolom C) moet groter zijn dan 900.
Anders gezegd, we willen rijen weergeven die aan de volgende voorwaarden voldoen:
( Subtotaal >900 EN Regio =non-blank) OF ( Subtotaal >900 EN Item =non-blank)
Zoals u al weet, moeten in het bereik van de Excel Advanced Filter criteria de voorwaarden verbonden met de EN-logica in dezelfde rij worden ingevoerd, en de voorwaarden verbonden met de OF-logica - op verschillende rijen:
Omdat het ene criterium in dit voorbeeld wordt uitgedrukt met een formule (geen spaties) en het andere een vergelijkingsoperator bevat (subtotaal> 900), herinner ik u eraan dat:
- Criteria gevormd met vergelijkingsoperatoren moeten koppen hebben die precies gelijk zijn aan de tabelkoppen, zoals de Subtotaal criteria in het bovenstaande screenshot.
- Op formules gebaseerde criteria moeten ofwel een lege kopcel hebben of een kop die met geen enkele tabelkop overeenkomt, zoals de Niet-blanco criteria in het bovenstaande screenshot.
Hoe de bovenste/onderste N-records te extraheren
Zoals u waarschijnlijk weet, hebben de ingebouwde Excel Getallenfilters een optie om de bovenste 10 of onderste 10 items weer te geven. Maar wat als u de bovenste 3 of onderste 5 waarden moet filteren? In dat geval komt Excel Advanced Filter met de volgende formules goed van pas:
Uittreksel top N items:
top_cel >=LARGE( reeks , N)Uittreksel bodem N items:
top_cel <=SMALL( reeks , N)Om bijvoorbeeld de top 3 subtotalen te filteren, maakt u het criteriabereik met deze formule:
=F5>=LARGE($F$5:$F$50,3)
Gebruik deze formule om de onderste 3 subtotalen te extraheren:
=F5>=SMALL($F$5:$F$50,3)
Waarbij F5 de bovenste cel is met gegevens in de Subtotaal kolom (met uitzondering van de kolomkop).
Het volgende screenshot toont de top 3 formule in actie:
Opmerking. Als het lijstbereik enkele rijen bevat met dezelfde waarden die in de bovenste/onderste N-lijst vallen, worden al deze rijen weergegeven, zoals in de onderstaande schermafbeelding:
Filter voor overeenkomsten en verschillen tussen twee kolommen
In een van onze vorige artikelen is uitgelegd hoe u twee kolommen in Excel kunt vergelijken en overeenkomsten en verschillen tussen deze kolommen kunt vinden. Naast Excel-formules, voorwaardelijke opmaakregels en de tool Duplicaatverwijderaar die in de bovenstaande zelfstudie is behandeld, kunt u ook het Geavanceerde filter van Excel gebruiken om rijen met dezelfde of verschillende waarden in twee of meer kolommen te extraheren. Voer hiervoor eenvan de volgende eenvoudige formules in het criteriagebied:
- Filter voor komt overeen met (duplicaten) in 2 kolommen:
=B5=C5
=B5C5
Waarbij B5 en C5 de bovenste cellen zijn met gegevens in de twee kolommen die u wilt vergelijken.
Opmerking. De Geavanceerde Filtertool kan alleen zoeken naar overeenkomsten en verschillen in de dezelfde rij Om alle waarden te vinden die in kolom A staan maar nergens in kolom B, gebruikt u deze formule.
Filter rijen op basis van overeenkomende items in een lijst
Stel dat u een grote tabel hebt met honderden of duizenden rijen, en u hebt een kortere lijst gekregen die alleen de items bevat die op een bepaald moment relevant zijn. De vraag is - hoe vindt u alle items in uw tabel die wel of niet in de kleinere lijst staan?
Filter rijen die overeenkomen met items in een lijst
Om alle items in de brontabel te vinden die ook in een kleinere lijst voorkomen, gebruikt u de volgende COUNTIF-formule:
COUNTIF( lijst_naar_match , top_data_cell)Ervan uitgaande dat de kleinere lijst in het bereik D2:D7 ligt, en de items van de tabel die met die lijst moeten worden vergeleken in kolom B staan, beginnend met rij 10, gaat de formule als volgt (let op het gebruik van absolute en relatieve verwijzingen):
=COUNTIF($D$2:$D$7,B10)
Natuurlijk bent u niet beperkt tot het filteren van uw tabel met slechts één criterium.
Om bijvoorbeeld rijen te filteren die overeenkomen met de lijst, maar voor de Regio Noord alleen twee criteria in dezelfde rij invoeren, zodat ze werken met de EN-logica:
- Regio:
="=Noord"
- Bijpassende artikelen:
=COUNTIF($D$2:$D$7,B10)
Zoals u in de onderstaande schermafbeelding kunt zien, zijn er slechts twee records in de tabel die aan beide criteria voldoen:
Opmerking. In dit voorbeeld gebruiken we de exacte match criteria voor tekstwaarden: ="=Noord "
om alleen die cellen te vinden die precies gelijk zijn aan de gespecificeerde tekst. Als u de regio-criteria gewoon invoert als Noord (zonder het gelijkheidsteken en dubbele aanhalingstekens) vindt Microsoft Excel alle items die beginnen met de opgegeven tekst, bijv. Noordoost of Noordwest Voor meer informatie, zie Excel Geavanceerd filter voor tekstwaarden.
Filter rijen die niet overeenkomen met items in een lijst
Om alle items in de tabel te vinden die niet in de kleinere lijst staan, controleren we of het resultaat van onze COUNTIF-formule gelijk is aan nul:
COUNTIF( lijst_naar_match , top_data_cell) =0Om bijvoorbeeld de Regio Noord items in de tabel die wel in de lijst voorkomen, gebruik de volgende criteria:
- Regio:
="=Noord"
- Niet bijpassende items:
=COUNTIF($D$2:$D$7,B10)=0
Opmerkingen:
- Als de lijst in een ander werkblad staat, moet u de bladnaam in de formule opnemen, bijv.
=COUNTIF(Sheet2!$A$2:$A$7,B10)
. - Als u de resultaten naar een ander blad wilt uitpakken, start dan het Geavanceerd filter vanuit het bestemmingsblad, zoals uitgelegd in Hoe gefilterde rijen uitpakken naar een ander werkblad.
Filter voor weekends en weekdagen
Tot nu toe hebben onze voorbeelden van het bereik van geavanceerde filtercriteria vooral betrekking gehad op numerieke en tekstwaarden. Nu is het tijd om wat aanwijzingen te geven aan degenen onder u die werken met datums.
De ingebouwde Excel Datumfilters bieden een breed scala aan opties die vele scenario's dekken. Veel, maar niet alle! Bijvoorbeeld, als u een lijst met data krijgt en u wordt gevraagd weekdagen en weekends te filteren, hoe zou u dat doen?
Zoals u waarschijnlijk weet, beschikt Microsoft Excel over een speciale WEEKDAY-functie die de dag van de week geeft die overeenkomt met een bepaalde datum. En het is deze functie die we gaan gebruiken in het Excel Advanced Filter criteriabereik.
Hoe weekends filteren in Excel
In gedachten houdend dat, in de WEEKDAG-termen, 1 staat voor zondag en 6 voor zaterdag, gaat de formule om weekends te filteren als volgt:
OF(WEEKDAG( datum )=7, WEEKDAG( datum )=1)In dit voorbeeld filteren we data in kolom B vanaf rij 5, dus onze formule Weekends heeft de volgende vorm:
=OF(WEEKDAG(B5)=7, WEEKDAG(B5)=1)
Hoe weekdagen filteren in Excel
Om weekdagen te filteren, wijzigt u de bovenstaande formule zodat de 1's (zondag) en 7's (zaterdag) worden weggelaten:
AND(WEEKDAG( datum )7, WEEKDAG( datum )1)Voor onze voorbeeldtabel werkt de volgende formule prima:
=AND(WEEKDAG(B5)7, WEEKDAG(B5)1)
Bovendien kunt u nog een voorwaarde toevoegen om lege cellen uit te filteren: =B5""
Om de datums in uw werkbladen op andere manieren te filteren, zoekt u gewoon de relevante functie Datum en aarzelt u niet deze te gebruiken in uw bereik met geavanceerde filtercriteria.
Welnu, dit is hoe u het Geavanceerd filter in Excel gebruikt met complexe criteria. Natuurlijk zijn uw mogelijkheden niet beperkt tot de voorbeelden die in deze tutorial worden besproken, ons doel was alleen om u een paar inspirerende ideeën te geven die u op het juiste spoor zetten. Onthoud dat de weg naar meesterschap geplaveid is met oefening, en u kunt onze voorbeelden downloaden via de onderstaande link en uitbreiden of omkeren.Ik dank u voor het lezen en hoop u volgende week op onze blog te zien!
Praktijk werkboek
Excel Advanced Filter voorbeelden (.xlsx bestand)