INHOUDSOPGAWE
Filter Uniek is 'n doeltreffende manier om met talle inskrywings in 'n datastel rond te kom. Excel bied verskeie kenmerke om unieke data te filter of duplikate te verwyder, maak nie saak wat ons dit noem nie. In hierdie artikel sal ons die maniere demonstreer om unieke data uit 'n voorbeelddatastel te filter.
Kom ons sê ons het drie eenvoudige kolomme in 'n Excel-datastel wat Besteldatum , Kategorie bevat , en Produk . Ons wil die unieke bestelde produkte binne die hele datastel hê.
Laai Excel-werkboek af
Filtreer unieke waardes .xlsm
8 maklike maniere om unieke waardes in Excel te filter
Metode 1: Gebruik Excel Verwyder duplikate-kenmerk om unieke waardes te filter
Om inskrywings in 'n groot datastel te peil, moet ons soms duplikate verwyder. Excel bied die Verwyder duplikate -kenmerk in die Data -oortjie om duplikaatinskrywings uit datastelle weg te laat. In hierdie geval wil ons duplikate uit die Kategorie en Produk -kolom verwyder. As gevolg hiervan kan ons die Verwyder duplikate -kenmerk gebruik om dit te doen.
Stap 1: Kies die reeks (d.w.s. Kategorie en Produk ) gaan dan na Data -oortjie > Kies Verwyder duplikate (van die Datanutsgoed -afdeling).
Stap 2: Die Verwyder duplikate venster verskyn. In die venster Verwyder duplikate ,
het al die kolomme gemerk.
Merk die opsieTRANSPOSE($I$4:I4)), MATCH(RY($F$5:$F$19), RY($F$5:$F$19)), “”), MATCH(RY($F$5:$F$19) ), ROW($F$5:$F$19))), 0)) ; gee unieke waardes van die skikking terug.
Stap 2: Jy moet CTRL+SHIFT+ENTER heeltemal druk en die hooflettersensitiewe unieke waardes verskyn in die selle.
Dus, die hele datastel lyk soos die onderstaande prent na sorteer alle tipes inskrywings in hul onderskeie kolomme.
Jy kan enige van die Produk datatipes verander om aan jou aanvraag te voldoen en formules daarvolgens toepas .
Metode 7: Excel-filter unieke waardes deur gebruik te maak van VBA-makrokode
Uit die datastel weet ons dat ons 'n produkkolom het, en ons wil die unieke waardes van die kolom. Om die werk te bereik, kan ons VBA Makrokode gebruik. Ons kan 'n kode skryf wat waardes van seleksie toeken en dit dan deur lusse stuur, tensy dit van alle duplikate ontslae raak.
Voordat ons die VBA -makrokode toepas, kom ons maak seker dat ons 'n datastel het van die volgende tipe en ons kies die reeks waaruit ons die unieke wil filtreer.
Stap 1: Om 'n makrokode te skryf, druk ALT+F11 om die Microsoft Visual Basic -venster oop te maak. Gaan in die venster na die Voeg in -oortjie (in die nutsbalk ) > Kies Module .
Stap 2: Die Module -venster verskyn. In die Module ,Plak die volgende kode.
3708
In die Makrokode,
Nadat veranderlikes verklaar is, skep mrf = CreateObject(“scripting.dictionary”) 'n objek wat aan toegewys is aan mrf .
Seleksie toegewys aan die Reeks . Die Vir -lus neem elke sel en pas dan by die Bereik vir duplikate. Daarna maak die kode die Seleksie skoon en verskyn met die unieke .
Stap 3: Druk F5 om die makro te laat loop en deur terug te keer na die werkblad, sien jy al die unieke waardes van die keuse.
Metode 8: Die gebruik van Spiltabel om Unieke Waardes te Filter
Sdraaitabel is 'n sterk hulpmiddel om 'n unieke itemslys uit geselekteerde selle uit te voer. In Excel kan ons maklik 'n Spiltabel invoeg en bereik wat ons hier verlang.
Stap 1: Kies 'n sekere reeks (d.i. Produk ). Gaan daarna na Voeg in Tab > Kies Draaitabel (vanaf Tabelle -afdeling).
Stap 2: Die Draaitabel van 'n tabel of reeks venster verskyn. In die venster sal
Die reeks (d.w.s. D4:D19 ) outomaties gekies word.
Kies Bestaande werkblaaie as waar jy wil hê die PivotTable moet geplaas word opsie.
Klik OK .
Stap 3: Die venster Draaitabelvelde verskyn. In die venster Draaitabelvelde is daar net een veld (d.w.s. Produk ).
Het die Produk -veld gemerk om die unieke produklys te laat verskyn soos in die prentjie hieronder getoon.
Lees meer: Hoe om Excel-draaitabel te filtreer
Gevolgtrekking
Filter uniek is 'n algemene bewerking om in Excel uit te voer. In hierdie artikel gebruik ons verskeie kenmerke, funksies soos UNIQUE , FILTER , MATCH , INDEX sowel as VBA Makro -kode om die unieke waardes uit te filter. Funksies hou die rou data ongeskonde en vertoon die resulterende waardes in 'n ander kolom of bestemming. Kenmerke verander egter rou data deur die inskrywings permanent uit die datastel te verwyder. Ek hoop hierdie artikel gee jou 'n duidelike konsep van die hantering van duplikate in jou datastelle en die onttrekking van unieke waardes. Lewer kommentaar, as jy verdere navrae het of iets het om by te voeg. Sien jou in my volgende artikel.
My data het opskrifte .Klik OK .
Stap 3: 'n Bevestigingsdialoogkassie verskyn wat sê 8 dupliseer waardes gevind en verwyder; 7 unieke waardes bly oor .
Klik OK .
Al die stappe lei tot die volgende gevolge soos in die onderstaande prent getoon.
Metode 2: Gebruik voorwaardelike formatering om unieke waardes te filtreer
'n Ander manier om die unieke te filter, is om voorwaardelike formatering . Excel Voorwaardelike formatering kan selle met talle kriteria formateer. In hierdie geval gebruik ons egter 'n formule om selle in 'n reeks voorwaardelik te formateer (d.w.s. Produk -kolom). Ons het twee opsies om Voorwaardelike formatering toe te pas; een is die voorwaardelike formatering om unieke waardes te filter en die ander een is om duplikaatwaardes van die reeks weg te steek.
2.1. Voorwaardelike formatering om unieke waardes te filter
In hierdie geval gebruik ons 'n formule in Voorwaardelike formatering -opsies om unieke inskrywings in Excel te filter.
Stap 1 : Kies die reeks (d.w.s. Produk 1 ) en Gaan dan na Tuis Tab > Kies Voorwaardelike formatering (vanaf Style -afdeling) > Kies Nuwe reël .
Stap 2: Die venster Nuwe formateringreël verskyn. In die Nuwe formateringreël -venster,
Kies Gebruik 'n formule om te bepaal watter selle om te formateer onder Kies 'n reëlTik opsie.
Tik die volgende formule onder die Redigeer die reëlbeskrywing opsie.
=COUNTIF($D$5:D5,D5)=1
In die formule het ons Excel beveel om elke sel in die D -kolom te tel as Uniek (d.w.s. gelyk aan 1 ). As die inskrywings ooreenstem met die opgelegde voorwaarde gee dit WAAR en Kleurformaat die selle terug.
Klik op Formaat .
Stap 3: Binne 'n oomblik verskyn die venster Format selle . In die Formateer selle -venster,
In die Lettertipe -afdeling- Kies enige formateringkleur soos uitgebeeld in die onderstaande prent.
Klik dan OK .
Stap 4: Deur OK in die vorige stap te klik, gaan jy na die Nuwe Formateerreël venster weer. In die venster Nuwe formateringreël kan jy die voorskou van unieke inskrywings sien.
Klik OK .
Uiteindelik kry u die unieke inskrywings se kleur geformateer soos u dit wil hê, soortgelyk aan die prentjie hieronder.
2.2. Voorwaardelike formatering om duplikate te versteek
Sonder om met die unieke waardes in te meng, kan ons eenvoudig die duplikaatwaardes versteek deur Voorwaardelike formatering te gebruik. Om die duplikate weg te steek, moet ons dieselfde formule toepas as wat ons gedoen het om die uniekes uit te filter, behalwe om hulle toe te ken aan waardes groter as 1 . Nadat ons die Wit Font -kleur gekies het, kan ons dit vir die res van die inskrywings versteek.
Stap1: Herhaal Stap 1 tot 2 van metode 2.1 maar verander die ingevoegde formule met die onderstaande een.
=COUNTIF($D$5:D5,D5)>1
Die formule beveel Excel om elke sel in die D -kolom te tel as Duplikate (d.w.s. groter as 1 ). As die inskrywings ooreenstem met die opgelegde voorwaarde gee dit WAAR en Kleurformaat (d.w.s. Versteek ) die selle terug.
Klik op Format .
Stap 2: As jy op Formateer klik, gaan jy na die Format Cells venster. In die venster Format selle ,
Kies Lettertipe kleur Wit .
Klik dan OK .
Stap 3: Nadat jy die Font -kleur gekies het, sal jy deur OK te klik, beweeg jy na die Nuwe formateringreël venster weer. Jy kan die voorskou as donker sien, want ons kies Wit as die Font -kleur.
Klik OK .
Om al die stappe te volg, lei jou na 'n uitbeelding soortgelyk aan die prent hieronder vir duplikaatwaardes.
Jy moet Wit
Lees meer: Hoe om data in Excel te filtreer met behulp van Formule
Metode 3: Gebruik Data-oortjie Gevorderde filterkenmerk om unieke waardes te filtreer
Die vroeëre metodes vee of verwyder inskrywings uit die datastel om uniek te filter. Dit is nogal gevaarlik terwyl ons aan sekere datastelle werk. Daar kan situasies wees waar ons nie kan nieverander die rou datastelle, in daardie gevalle kan ons die Gevorderde Filter opsie gebruik om uniek in die verlangde posisie te filtreer.
Stap 1: Kies die reeks (d.w.s., Produk kolom). Gaan dan na Data Tab > Kies Gevorderd (vanaf Sorteer & Filter -afdeling).
Stap 2: Die Gevorderde filter venster verskyn. In die Gevorderde Filter -venster,
Kies Kopieer na 'n ander ligging -aksie onder Aksie -opsie. Jy kan kies Filtreer die lys, in plek, of Kopieer na 'n ander ligging , maar ons kies laasgenoemde een om nie die rou data te verander nie.
Ken 'n ligging toe (d.w.s. F4 ) in die Kopieer na opsie.
Het gemerk die Slegs unieke rekords opsie.
Klik OK .
Deur OK te klik, kry jy die unieke waardes in die bestemde ligging soos aangedui in die stappe.
Metode 4: Filter unieke waardes deur gebruik te maak van Excel UNIEKE funksie
Die vertoon van unieke waardes in 'n ander kolom kan ook bereik word deur die UNIEKE funksie. Die UNIEK -funksie haal 'n lys unieke inskrywings uit 'n reeks of skikking. Die sintaksis van die UNIQUE -funksie is
UNIQUE (array, [by_col], [exactly_once])
Die argumente,
skikking ; reeks, of skikking waaruit die unieke waardes onttrek word.
[by_col] ; maniere om waardes te vergelyk en te onttrek, deur ry = ONWAAR ( verstek )en deur kolom = WAAR . [opsioneel]
[presies_een keer] ; eenmalige waardes = WAAR en bestaande unieke waardes = ONWAAR (by verstek ). [opsioneel]
Stap 1: Tik die volgende formule in enige leë sel (d.w.s. E5 ).
=UNIQUE(D5:D19)
Stap 2: Druk ENTER dan verskyn al die unieke inskrywings in 'n sekonde in die kolom soortgelyk aan die prentjie hieronder.
Die UNIEK -funksie mors al die unieke inskrywings op 'n slag. Jy kan egter nie die UNIQUE -funksie anders as Excel 365 -weergawe gebruik nie.
Soortgelyke lesings
- Excel-filterdata gebaseer op selwaarde (6 doeltreffende maniere)
- Hoe om filter in Excel by te voeg (4 metodes)
- Kortpad vir Excel-filter (3 vinnige gebruike met voorbeelde)
- Hoe om teksfilter in Excel te gebruik (5 voorbeelde)
Metode 5: Die gebruik van UNIEKE en FILTER-funksies (met kriteria)
In metode 4 gebruik ons die UNIQUE -funksie om die unieke waardes uit te mors. Wat as ons unieke inskrywings wil hê, afhangende van 'n toestand? Kom ons sê ons wil unieke Produk -name van 'n sekere Kategorie uit ons datastel hê.
In hierdie geval wil ons die unieke Produk -name van die Bars (d.i. E4 ) kategorie uit ons datastel.
Stap 1: Skryf die onderstaande formule in enige sel (d.w.s. E5 ).
=UNIQUE(FILTER(D5:D19,C5:C19=E4))
Dieformule gee opdrag om die D5:D19 reeks te filtreer, en stel 'n voorwaarde op reeks C5:C19 om gelyk te wees aan die sel E4 .
Stap 2: Druk ENTER . Daarna verskyn produkte onder die Strewe -kategorie in die selle van die Strewe -kolom soos in die volgende skermkiekie gewys.
Jy kan enige Kategorie kies om unieke produkte uit te filtreer. Dit is nogal 'n effektiewe manier om groot verkoopsdatastelle te hanteer. Die FILTER -funksie is slegs beskikbaar in Excel 365.
Lees meer: Filter veelvuldige kriteria in Excel
Metode 6: Gebruik MATCH- en INDEX-funksies (Skikkingsformule)
Vir eenvoudiger demonstrasie gebruik ons 'n datastel met geen spasies of hooflettersensitiewe inskrywings nie. So, hoe kan ons so 'n datastel hanteer wat spasies en hooflettergevoelige inskrywings het? Voordat ons 'n uitweg demonstreer, kom ons filtreer die nie-leë reeks (d.w.s. Produk 1 ) deur 'n gekombineerde formule te gebruik. In hierdie geval gebruik ons die MATCH en INDEX funksies om uniek te filter.
6.1. MATCH- en INDEX-funksies Filter unieke waardes uit 'n nie-leë reeks
Ons kan sien daar is geen bestaande leë selle in die produk 1-reeks nie.
Stap 1: Tik die volgende formule in sel G5 om die unieke uit te filter.
=IFERROR(INDEX($D$5:$D$19, MATCH(0, COUNTIF($G$4:G4, $D$5:$D$19), 0)),"")
Deur die formule,
Eerstens, COUNTIF($G$4:G4, $D$5:$D$19) ; tel die aantal selle in die reeks (d.w.s. $G$4:G4 ) wat die voorwaarde gehoorsaam (d.w.s. $D$5:$D$19) . COUNTIF gee 1 terug as dit $G$4:G4 in die reeks anders 0 vind.
Tweedens, MATCH(0, COUNTIF($G$4:G4, $D$5:$D$19), 0)) ; gee die relatiewe posisie van 'n produk in die reeks terug.
Uiteindelik, INDEX($D$5:$D$19, MATCH(0, COUNTIF($G$4:G4) , $D$5:$D$19), 0)); stuur die selinskrywings terug wat aan die voorwaarde voldoen.
Die IFERROR -funksie beperk die formule om enige foute in uitkomste te vertoon.
Stap 2: Aangesien die formule 'n skikkingsformule is, druk CTRL+SHIFT+ENTER heeltemal. Al die unieke inskrywings uit die Produk 1 reeks verskyn.
6.2. MATCH- en INDEX-funksies om unieke waardes van bestaande leë selle in 'n reeks te filtreer
Nou, in die Produk 2 -reeks, kan ons sien dat daar verskeie leë selle bestaan. Om die unieke onder die leë selle uit te filter, moet ons die ISBLANK -funksie invoeg.
Stap 1: Plak die onderstaande formule in sel H5 .
=IFERROR(INDEX($E$5:$E$19, MATCH(0,IF(ISBLANK($E$5:$E$19),1,COUNTIF($H$4:H4, $E$5:$E$19)), 0)),"")
Hierdie formule werk op dieselfde manier as wat ons dit in 6.1 beskryf het. afdeling . Die ekstra IF -funksie met die logiese toets van die ISBLANK -funksie stel die formule egter in staat om enige leë selle in die reeks te ignoreer.
Stap 2: Druk CTRL+SHIFT+ENTER en die formule ignoreer die leë selle en haal al die unieke inskrywingssoos uitgebeeld in die volgende prentjie.
6.3. MATCH- en INDEX-funksies om unieke waardes uit 'n hooflettergevoelige reeks te filter
As ons datastel hooflettergevoelige inskrywings het, moet ons die FREKWENSIE -funksie saam met die <6 gebruik>TRANSPOSE en RY funksies om die unieke uit te filter.
Stap 1: Pas die onderstaande formule toe in sel I5 .
=INDEX($F$5:$F$19, MATCH(0, FREQUENCY(IF(EXACT($F$5:$F$19, TRANSPOSE($I$4:I4)), MATCH(ROW($F$5:$F$19), ROW($F$5:$F$19)), ""), MATCH(ROW($F$5:$F$19), ROW($F$5:$F$19))), 0))
Seksies van die formule,
- TRANSPOSE($I$4:I4); transponeer vorige waardes deur kommapunte om te skakel na komma. ( d.w.s. TRANSPOSE({“unique values (case sensitive)”;Whole Wheat”}) word {“unique values (case sensitive)”,” Volkoring”}
- EXACT($F$5:$F$19, TRANSPOSE($I$4:I4); kontroleer of snare dieselfde en hooflettergevoelig is of nie.
- IF(EXACT($F$5:$F$19, TRANSPOSE($I$4:I4)), MATCH(RY($F$5:$F$19), ROW($F$5:$F $19)); gee die relatiewe posisie van 'n string in die skikking as TRUE .
- FREQUENCY(IF(EXACT($F$5:$F$19, TRANSPOSE) ($I$4:I4)), MATCH(RY($F$5:$F$19), ROW($F$5:$F$19)), “”) ; bereken hoeveel keer 'n string teenwoordig is in die skikking.
- MATCH(0, FREQUENCY(IF(EXACT($F$5:$F$19, TRANSPOSE($I$4:I4)), MATCH(RY($F$5:$F $19), ROW($F$5:$F$19)), “”), MATCH(RY($F$5:$F$19), ROW($F$5:$F$19))), 0)) ; vind eerste Vals (d.w.s. Leë ) waardes in die skikking.
- INDEX($F$5:$F$19, MATCH(0, FREQUENCY(IF(EXACT( $F$5:$F$19,