INHOUDSOPGAWE
Die tutoriaal wys hoe om Gevorderde Filter in Excel te gebruik en verskaf 'n aantal voorbeelde van nie-triviale kriteriareeksvoorbeelde om 'n hooflettergevoelige filter te skep, passings en verskille tussen twee kolomme te vind, rekords te onttrek wat by 'n kleiner lys pas. , en meer.
In ons vorige artikel het ons verskillende aspekte van Excel Advanced Filter bespreek en hoe om dit te gebruik om rye met EN sowel as OF-logika te filter. Noudat jy die basiese beginsels ken, kom ons kyk na meer komplekse kriteriareeksvoorbeelde wat nuttig kan wees vir jou werk.
Opstel van 'n formule-gebaseerde kriteriareeks
Aangesien die meeste van die kriteriareeksvoorbeelde wat in hierdie tutoriaal bespreek word, verskeie formules gaan insluit, kom ons begin met die definisie van die noodsaaklike reëls om hulle behoorlik op te stel. Glo my, hierdie klein stukkie teorie sal jou baie tyd spaar en die kopseer spaar om jou komplekse kriteriareekse wat verskeie toestande gebaseer op formules insluit, in te sluit.
- Die formule wat jy in die kriteriareeks gebruik. moet evalueer na WAAR of ONWAAR .
- Die kriteriareeks moet ten minste 2 selle bevat: formulesel en kopsel.
- Die opskrifsel van die formule-gebaseerde kriteria moet óf leeg óf verskil van enige van die tabel (lysreeks) opskrifte.
- Vir die formule om vir elke ry in die lysreeks geëvalueer te word, verwys na die boonsteom weeksdae in Excel te filtreer
Om weeksdae te filtreer, wysig die formule hierbo sodat dit 1'e (Sondag) en 7'e (Saterdag) sal uitlaat:
EN(WEEKDAG( datum ) 7, WEEKDAG( datum )1)Vir ons voorbeeldtabel sal die volgende formule 'n lekkerny wees:
=AND(WEEKDAY(B5)7, WEEKDAY(B5)1)
Boonop kan jy een byvoeg meer voorwaarde om leë selle uit te filtreer:
=B5""
Om die datums in jou werkblaaie op ander maniere te filtreer, vind net die relevante Datumfunksie en moet nie huiwer om dit in jou gevorderde filterkriteriareeks.
Wel, dit is hoe jy die Gevorderde Filter in Excel met komplekse kriteria gebruik. U opsies is natuurlik nie beperk tot die voorbeelde wat in hierdie tutoriaal bespreek word nie, ons doel was net om vir u 'n paar inspirerende idees te gee wat u op die regte pad sal plaas. Onthou dat die pad na bemeestering met oefening geplavei is, wil jy dalk ons voorbeelde aflaai deur die onderstaande skakel af te laai en hulle uit te brei of omgekeerd te ontwerp vir beter begrip. Ek bedank jou vir die lees en hoop om jou volgende week op ons blog te sien!
Oefenwerkboek
Excel Advanced Filter-voorbeelde (.xlsx-lêer)
sel met data wat 'n relatiewe verwysing soos A1 gebruik. - Vir die formule wat slegs vir 'n spesifieke sel of reeks selle geëvalueer moet word, verwys na daardie sel of reeks gebruik 'n absolute verwysing soos $A$1.
- Wanneer jy na die lysreeks in die formule verwys, gebruik altyd absolute selverwysings.
- Wanneer jy veelvuldige voorwaardes verskaf, voer al die kriteria op dieselfde ry om hulle met 'n EN -operateur te verbind, en plaas elke kriterium op 'n aparte ry om hulle met die OF -operateur te verbind.
Excel Gevorderde Filter kriteria reeks voorbeelde
Die volgende voorbeelde sal jou leer hoe om jou eie filters in Excel te skep om meer komplekse take te hanteer wat nie met die gewone Excel AutoFilter uitgevoer kan word nie.
Geval- sensitiewe filter vir tekswaardes
Sowel as Excel AutoFilter, is die Advanced Filter-nutsding van nature hoofletter-onsensitief, wat beteken dat dit nie tussen hoofletters en kleinletters onderskei wanneer tekswaardes gefiltreer word nie. Jy kan egter maklik 'n hoofletter-sensitiewe soektog uitvoer deur die EXACT-funksie in die gevorderde filterkriteria te gebruik.
Om byvoorbeeld rye te filter wat Piesang bevat, ignoreer BANANA en piesang , voer die volgende formule in die kriteriareeks in:
=EXACT(B5, "Banana")
Waar B die kolom is wat die itemname bevat, en ry 5 die eerste datary is .
En pas dan Excel Advanced Filter toedeur die Gevorderde -knoppie op die Data -oortjie te klik en die Lysreeks en Kriteriareeks op te stel soos in die skermkiekie hieronder getoon. Let asseblief daarop dat die Kriteriareeks 2 selle insluit - die kopsel en die formulesel .
Let op. Bogenoemde prent sowel as alle verdere skermkiekies in hierdie tutoriaal wys formules in die kriteriareeksselle uitsluitlik ter wille van duidelikheid. In jou regte werkblaaie behoort die formulesel óf WAAR óf ONWAAR terug te gee, afhangende van of die eerste ry data by die kriteria pas of nie:
Filter waardes bo of onder gemiddeld in 'n kolom
Wanneer jy numeriese waardes filter, wil jy dalk net daardie selle wat bo of onder 'n gemiddelde waarde in die kolom is, vertoon. Byvoorbeeld:
Om rye met subtotaal bogemiddeld te filtreer, gebruik die volgende formule in die kriteriareeks:
=F5>AVERAGE($F$5:$F$50)
Om rye te filtreer met subtotaal ondergemiddeld , gebruik die volgende formule:
=F5
Let asseblief daarop dat ons 'n relatiewe verwysing gebruik om na die boonste sel met data te verwys ( F5), en absolute verwysings om die hele reeks te definieer waarvoor jy die gemiddelde wil bereken, uitgesluit die kolomopskrif ($F$5:$F$50).
Die volgende skermkiekie demonstreer die bo-gemiddelde formule in aksie :
Diegene van julle wat vertroud is met Excel NommerFilters mag dalk wonder, hoekom sal iemand die moeite doen om 'n gevorderde filter te gebruik terwyl die ingeboude getalfilters reeds die Bo-gemiddeld - en Ondergemiddeld -opsies het? Dit is reg, maar die ingeboude Excel-filters kan nie saam met die OF-logika gebruik word nie!
So, om hierdie voorbeeld verder te neem, laat ons rye filter waar Subtotaal (kolom F) OF September verkope (kolom E) is bogemiddeld. Stel hiervoor die kriteriareeks op met die OF-logika deur elke voorwaarde op 'n aparte ry in te voer. As gevolg hiervan, sal jy 'n lys items met die bogenoemde gemiddelde waardes in óf kolom E óf F kry:
Filter rye met spasies of nie-blankes
Soos almal weet, het Excel Filter 'n ingeboude opsie om leë selle te filter. Deur die (Blanks) -merkblokkie in die AutoFilter-kieslys te selekteer of te ontkies, kan jy slegs daardie rye vertoon wat leë of nie-leë selle in een of meer kolomme het. Die probleem is dat die ingeboude Excel-filter vir spasies net met die EN-logika kan werk.
As jy leë of nie-leë selle met die OF-logika wil filter, of gebruik die leë / nie-leë voorwaardes saam met ander kriteria, stel 'n gevorderde filterkriteriareeks op met een van die volgende formules:
Filter blanks :
top_cell =""Filter nie-blanks:
top_sel ""Filter leë selle met die OF-logika
Om rye te filter wathet 'n leë sel in kolom A of B, of in beide kolomme, stel die Gevorderde Filter-kriteriareeks op hierdie manier op:
-
=A6=""
-
=B6=""
Waar 6 die boonste ry data is.
Filtering van nie-leë selle met OF sowel as EN logika
Om meer begrip te kry van hoe Excel se gevorderde filter met veelvuldige kriteria werk, kom ons filter rye in ons voorbeeldtabel met die volgende voorwaardes:
- Of Streek (kolom A) of Item (kolom B) moet nie leeg wees nie, en
- Subtotaal (kolom C) moet groter as 900 wees.
Om dit anders te stel , wil ons rye vertoon wat aan die volgende voorwaardes voldoen:
( Subtotaal >900 EN Streek =nie-leë) OF ( Subtotaal >900 EN Item =nie-leeg)
Soos jy reeds weet, in die Excel Advanced Filterkriteriareeks, die voorwaardes wat met die EN-logika verbind is, moet in dieselfde ry ingevoer word, en die voorwaardes wat met die OF-logika verbind word - op verskillende rye:
Omdat een kriteria in hierdie voorbeeld uitgedruk word met 'n formule (nie-blanks) en die ander 'n vergelykingsoperateur insluit (Subtotaal > 900), laat ek jou daaraan herinner dat:
- Kriteria wat met vergelykingsoperateurs gevorm word, opskrifte moet hê wat presies gelyk is aan die tabelopskrifte, soos die Subtotaal -kriteria in die skermkiekie hierbo.
- Formule-gebaseerde kriteria moet hêóf 'n leë opskrifsel óf 'n opskrif wat nie by enige van die tabelopskrifte pas nie, soos die Non-blanks -kriteria in die skermkiekie hierbo.
Hoe om bo/onder te onttrek N rekords
Soos jy waarskynlik weet, het die ingeboude Excel-nommerfilters 'n opsie om die top 10 of onderste 10 items te vertoon. Maar wat as jy die top 3 of onderste 5 waardes moet filtreer? In hierdie geval kom Excel Advanced Filter met die volgende formules handig te pas:
Onttrek top N items:
top_sel >=GROOT( reeks , N)Onttrek onderste N items:
top_sel <=SMALL( reeks , N)Vir byvoorbeeld, om top 3 subtotale te filter, skep die kriteria reeks met hierdie formule:
=F5>=LARGE($F$5:$F$50,3)
Om onderste 3 subtotale te onttrek, gebruik hierdie formule:
=F5>=SMALL($F$5:$F$50,3)
Waar F5 die boonste sel is met data in die Subtotaal kolom (uitgesluit die kolomopskrif).
Die volgende skermkiekie wys die top 3 formule in aksie:
Let wel. As die lysreeks 'n paar rye bevat met dieselfde waardes wat in die boonste/onderste N-lys val, sal al sulke rye vertoon word, soos in die skermkiekie hieronder gewys:
Filter vir passings en verskille tussen twee kolomme
Een van ons vorige artikels het 'n verskeidenheid maniere verduidelik om twee kolomme in Excel te vergelyk en passings en verskille tussen hulle te vind. Benewens Excel-formules, reëls vir voorwaardelike formateringen die Duplicate Remover-instrument wat in die tutoriaal hierbo gedek word, kan jy ook Excel se Advanced Filter gebruik om rye te onttrek wat dieselfde of verskillende waardes in twee of meer kolomme het. Om dit te doen, voer een van die volgende eenvoudige formules in die kriteriareeks in:
- Filter vir passings (duplikate) in 2 kolomme:
=B5=C5
=B5C5
Waar B5 en C5 die boonste selle is met data in die twee kolomme wat jy wil vergelyk.
Let wel. Die Gevorderde Filter-nutsding kan slegs vir passings en verskille in dieselfde ry soek. Gebruik hierdie formule om alle waardes wat in kolom A is, maar nêrens in kolom B is, te vind nie.
Filter rye gebaseer op ooreenstemmende items in 'n lys
Gestel jy het 'n groot tabel met honderde of duisende rye, en jy het 'n korter lys ontvang wat slegs die items bevat wat op 'n gegewe oomblik relevant is. Die vraag is - hoe vind jy alle inskrywings in jou tabel wat in die kleiner lys is of nie is nie?
Filter rye wat ooreenstem met items in 'n lys
Om alle items in die bron te vind tabel wat ook in 'n kleiner lys teenwoordig is, deur die volgende COUNTIF-formule te gebruik:
COUNTIF( lys_tot_passing , top_data_sel)As aangeneem word dat die kleiner lys in die reeks D2 is :D7, en die tabel se items wat met daardie lys vergelyk moet word, is in kolom B wat begin met ry 10, die formulegaan soos volg (let asseblief op die gebruik van absolute en relatiewe verwysings):
=COUNTIF($D$2:$D$7,B10)
Natuurlik is jy nie beperk tot die filter van jou tabel met net een kriterium.
Om byvoorbeeld rye te filtreer wat by die lys pas, maar slegs vir die Noordstreek , voer twee kriteria in dieselfde ry in sodat hulle met die EN-logika sal werk:
- Streek:
="=North"
- Paste items:
=COUNTIF($D$2:$D$7,B10)
Soos jy in die skermkiekie hieronder kan sien, is daar net twee rekords in die tabel wat by albei kriteria pas :
Let wel. In hierdie voorbeeld gebruik ons die presiese pasmaat -kriteria vir tekswaardes: ="=North "
om slegs daardie selle te vind wat presies gelyk is aan die gespesifiseerde teks. As jy die Streek-kriteria bloot as Noord invoer (sonder die gelyke-teken en dubbele aanhalingstekens), sal Microsoft Excel alle items vind wat met die gespesifiseerde teks begin, bv. Noordoos of Noordwes . Vir meer inligting, sien asseblief Excel Advanced Filter vir tekswaardes.
Filtreer rye wat nie by items in 'n lys pas nie
Om alle items in die tabel te vind wat nie in die kleiner lys is nie, kyk of die resultaat van ons COUNTIF-formule gelyk is aan nul:
COUNTIF( lys_tot_pas , top_data_sel) =0Om byvoorbeeld die Noordstreek -items in die tabel wat wel in die lys verskyn te filtreer, gebruik die volgende kriteria:
- Streek:
="=North"
- Nie-ooreenstemmende items:
=COUNTIF($D$2:$D$7,B10)=0
Notas:
- As die lys om te pas in 'n ander werkblad voorkom, maak seker dat jy die bladnaam by die formule insluit, bv.
=COUNTIF(Sheet2!$A$2:$A$7,B10)
. - As jy die resultate na 'n ander blad wil onttrek, begin die Gevorderde Filter vanaf die bestemmingsblad, soos verduidelik in Hoe om gefiltreerde rye na 'n ander werkblad te onttrek.
Filter vir naweke en weeksdae
Tot dusver het ons Gevorderde Filter-kriteriareeksvoorbeelde meestal gehandel oor numeriese en tekswaardes. Nou is dit tyd om 'n paar leidrade te gee aan diegene van julle wat op datums werk.
Die ingeboude Excel-datumfilters bied 'n wye verskeidenheid opsies wat baie scenario's dek. Baie, maar nie almal nie! Byvoorbeeld, as jy 'n lys van datums gegee word en gevra word om weeksdae en naweke te filter, hoe sal jy te werk gaan?
Soos jy waarskynlik weet, bied Microsoft Excel 'n spesiale WEEKDAY-funksie wat die dag van die week wat ooreenstem met 'n gegewe datum. En dit is hierdie funksie wat ons in die Excel Advanced Filter-kriteriareeks gaan gebruik.
Hoe om naweke in Excel te filtreer
Hou in gedagte dat, in die WEEKDAY terme, 1 staan vir Sondag en 6 staan vir Saterdag, die formule om naweke te filter gaan soos volg:
OF(WEEKDAY( datum )=7, WEEKDAY( datum )=1)In hierdie voorbeeld filter ons datums in kolom B wat met ry 5 begin, dus neem ons Naweke-formule die volgende vorm aan:
=OR(WEEKDAY(B5)=7, WEEKDAY(B5)=1)