Indholdsfortegnelse
Dette er den sidste del af Excel-serien om unikke værdier, der viser, hvordan du får en liste over unikke værdier i en kolonne ved hjælp af en formel, og hvordan du tilpasser formlen til forskellige datasæt. Du lærer også, hvordan du hurtigt får en liste over unikke værdier ved hjælp af Excel's Advanced Filter, og hvordan du udtrækker unikke rækker med Duplicate Remover.
I et par af de seneste artikler har vi diskuteret forskellige metoder til at tælle og finde unikke værdier i Excel. Hvis du har haft mulighed for at læse disse tutorials, ved du allerede, hvordan du får en unik eller særskilt liste ved at identificere, filtrere og kopiere. Men det er en lidt lang og langt fra den eneste måde at udtrække unikke værdier i Excel på. Du kan gøre det meget hurtigere ved at bruge en særlig formel, og om et øjeblikJeg vil vise dig dette og et par andre teknikker.
Tip. For hurtigt at få unikke værdier i den nyeste version af Excel 365, der understøtter dynamiske arrays, skal du bruge UNIQUE-funktionen som forklaret i den ovenfor linkede vejledning.
Sådan får du unikke værdier i Excel
For at undgå forvirring skal vi først og fremmest blive enige om, hvad vi kalder unikke værdier i Excel. Unikke værdier er de værdier, der kun findes én gang i en liste, f.eks:
Hvis du vil udtrække en liste over unikke værdier i Excel, skal du bruge en af følgende formler.
Array formel for unikke værdier (udfyldes ved at trykke på Ctrl + Shift + Enter ):
=IFERROR(INDEX($A$2:$A$10, MATCH(0, COUNTIF($B$1:B1,$A$2:$A$10) + (COUNTIF($A$2:$A$10, $A$2:$A$10)1), 0)), ""), "")
Almindelig formel for unikke værdier (afsluttes ved at trykke på Enter):
=IFERROR(INDEX($A$2:$A$10, MATCH(0,INDEX(COUNTIF($B$1:B1, $A$2:$A$10)+(COUNTIF($A$2:$A$10, $A$2:$A$10)1),0,0), 0), 0)), "")
I ovenstående formler anvendes følgende referencer:
- A2:A10 - kildelisten.
- B1 - den øverste celle i den unikke liste minus 1. I dette eksempel starter vi den unikke liste i B2, og derfor angiver vi B1 i formlen (B2-1=B1). Hvis din unikke liste f.eks. starter i celle C3, skal du ændre $B$1:B1 til $C$2:C2.
Bemærk: Da formlen henviser til cellen over den første celle i den unikke liste, som normalt er kolonnehovedet (B1 i dette eksempel), skal du sørge for, at din overskrift har et unikt navn, som ikke forekommer andre steder i kolonnen.
I dette eksempel udtrækker vi unikke navne fra kolonne A (nærmere bestemt fra området A2:A20), og det følgende skærmbillede viser arrayformlen i aktion:
Den detaljerede forklaring af formlens logik findes i et separat afsnit, og her kan du se, hvordan du bruger formlen til at udtrække unikke værdier i dine Excel-regneark:
- Juster en af formlerne i overensstemmelse med dit datasæt.
- Indtast formlen i den første celle i den unikke liste (B2 i dette eksempel).
- Hvis du bruger arrayformlen, skal du trykke på Ctrl + Shift + Enter . Hvis du har valgt den almindelige formel, skal du trykke på Enter-tasten som sædvanlig.
- Kopier formlen så langt ned som nødvendigt ved at trække i udfyldningshåndtaget. Da begge formler for unikke værdier er indkapslet i IFERROR-funktionen, kan du kopiere formlen op til slutningen af din tabel, og den vil ikke fylde dine data med fejl, uanset hvor få unikke værdier der er blevet udtrukket.
Sådan får du særskilte værdier i Excel (unikke + 1. dubletforekomster)
Som du måske allerede har gættet ud fra overskriften på dette afsnit, forskellige værdier i Excel er alle forskellige værdier i en liste, dvs. unikke værdier og første forekomster af dubletter. F.eks:
Du kan få en særskilt liste i Excel ved at bruge følgende formler.
Array særskilt formel (kræver, at du trykker på Ctrl + Shift + Enter ):
=IFERROR(INDEX($A$2:$A$10, MATCH(0, COUNTIF($B$1:B1, $A$2:$A$10), 0))), "")
Almindelig en særlig formel:
=IFERROR(INDEX($A$2:$A$10, MATCH(0, INDEX(COUNTIF($B$1:B1, $A$2:$A$10), 0, 0), 0), 0)), "")
Hvor:
- A2:A10 er kildelisten.
- B1 er cellen over den første celle i den særskilte liste. I dette eksempel begynder den særskilte liste i celle B2 (det er den første celle, hvor du indtaster formlen), så du henviser til B1.
Udtrække særskilte værdier i en kolonne uden hensyntagen til tomme celler
Hvis din kildeliste indeholder tomme celler, vil den særskilte formel, som vi lige har diskuteret, returnere et nul for hver tom række, hvilket kan være et problem. For at løse dette skal du forbedre formlen lidt mere:
Array-formel til udtræk særskilte værdier eksklusive tomme felter :
=IFERROR(INDEX($A$2:$A$10, MATCH(0, COUNTIF($B$1:B1, $A$2:$A$10&"") + IF($A$2:$A$10="",1,0), 0)), ""), "")
Hent en liste over særskilte tekstværdier, idet der ses bort fra tal og tomme felter
På samme måde kan du få en liste over forskellige værdier med undtagelse af tomme celler og celler med tal :
=IFERROR(INDEX($A$2:$A$10, MATCH(0, COUNTIF($B$1:B1, $A$2:$A$10&"") + IF(ISTEXT($A$2:$A$10)=FALSE,1,0), 0)), ""), "")
Som en hurtig påmindelse er A2:A10 i ovenstående formler kildelisten, og B1 er cellen lige over den første celle i den særskilte liste.
Følgende skærmbillede viser resultatet af begge formler:
Sådan udtrækkes case-sensitive særskilte værdier i Excel
Når du arbejder med data, der er følsomme over for store og små bogstaver, f.eks. adgangskoder, brugernavne eller filnavne, kan du have brug for at få en liste over forskellige værdier, der er følsomme over for store og små bogstaver. Brug følgende arrayformel til dette formål, hvor A2:A10 er kildelisten, og B1 er cellen over den første celle i listen med forskellige værdier:
Array-formel til at få særskilte værdier, der tager hensyn til store og små bogstaver (kræver, at du trykker på Ctrl + Shift + Enter )
=IFERROR(INDEX($A$2:$A$10, MATCH(0, FREQUENCY(IF(EXACT($A$2:$A$10,TRANSPOSE($B$1:B1))), MATCH(ROW($A$2:$A$10), ROW($A$2:$A$10)), ""), MATCH(ROW($A$2:$A$10), ROW($A$2:$A$10))), 0)), "")), "")
Sådan fungerer den unikke/adskillelige formel
Dette afsnit er skrevet specielt til de nysgerrige og opmærksomme Excel-brugere, der ikke blot ønsker at kende formlen, men også at forstå dens mekanismer og skruer fuldt ud.
Det siger sig selv, at formlerne til at udtrække unikke og særskilte værdier i Excel hverken er trivielle eller ligetil. Men ved nærmere eftersyn kan du bemærke, at alle formlerne er baseret på den samme fremgangsmåde - brug af INDEX/MATCH i kombination med COUNTIF- eller COUNTIF + IF-funktioner.
I vores dybdegående analyse bruger vi array-formlen, der udtrækker en liste af forskellige værdier, fordi alle andre formler, der behandles i denne vejledning, er forbedringer eller variationer af denne grundlæggende formel:
=IFERROR(INDEX($A$2:$A$10, MATCH(0, COUNTIF($B$1:B1, $A$2:$A$10), 0))), "")
Lad os til at begynde med fjerne den indlysende IFERROR-funktion, som bruges med det ene formål at eliminere #N/A-fejl, når antallet af celler, hvor du har kopieret formlen, overstiger antallet af forskellige værdier i kildelisten.
Og nu skal vi gennemgå den centrale del af vores særskilte formel:
- COUNTIF(interval, kriterier) returnerer antallet af celler inden for et område, der opfylder en bestemt betingelse.
I dette eksempel returnerer COUNTIF($B$1:B1, $A$2:$A$10) et array af 1'er og 0'er baseret på, om en af værdierne i kildelisten ($A$2:$A$10) forekommer et sted i den særskilte liste ($B$1:B1). Hvis værdien findes, returnerer formlen 1, ellers - 0.
I celle B2 bliver COUNTIF($B$1:B1, $A$2:$A$10) i celle B2 til:
COUNTIF("Distinct", {"Ronnie"; "David"; "Sally"; "Jeremy"; "Robert"; "David"; "Robert"; "Tom"; "Sally"})
og returnerer:
{0;0;0;0;0;0;0;0;0}
fordi ingen af elementerne i kildelisten ( kriterier ) vises i rækkevidde hvor funktionen leder efter et match. I dette tilfælde, rækkevidde ($B$1:B1) består af et enkelt element - "Distinct".
MATCH(opslag_værdi, opslagsarray, [match_type])
returnerer den relative position for opslagsværdien i arrayet.
I dette eksempel er opslagsværdien 0, og derfor er:
MATCH(0,COUNTIF($B$1:B1, $A$2:$A$10), 0)
bliver til:
MATCH(0, { 0 ;0;0;0;0;0;0;0;0},0)
og returnerer
fordi vores MATCH-funktion får den første værdi, der er nøjagtig lig med opslagsværdien (som du husker, er opslagsværdien 0).
I dette eksempel er INDEX($A$2:$A$10, 1)
bliver:
INDEX({"Ronnie"; "David"; "Sally"; "Jeremy"; "Robert"; "David"; "Robert"; "Robert"; "Tom"; "Sally"}, 1)
og returnerer "Ronnie".
Når formlen kopieres nedad i kolonnen, udvides den særskilte liste ($B$1:B1), fordi den anden cellereference (B1) er en relativ reference, der ændres i overensstemmelse med den relative position i den celle, hvor formlen flyttes.
Så når den kopieres til celle B3, vil COUNTIF($B$1: B1 , $A$2:$A$10) ændres til COUNTIF($B$1: B2 , $A$2:$A$10), og bliver:
COUNTIF({"Distinct"; "Ronnie"}, {"Ronnie"; "David"; "Sally"; "Jeremy"; "Robert"; "David"; "Robert"; "Tom"; "Sally"}), 0)), ""), "")
og returnerer:
{1;0;0;0;0;0;0;0;0}
fordi der findes en "Ronnie" i intervallet $B$1:B2.
Og derefter, MATCH(0,{1; 0 ;0;0;0;0;0;0;0;0;0;0;0},0) returnerer 2, fordi 2 er den relative position for det første 0 i arrayet.
Og endelig, INDEX($A$2:$A$10, 2)
returnerer værdien fra den anden række, som er "David".
Tip. For at få en bedre forståelse af formlens logik kan du vælge forskellige dele af formlen i formellinjen og trykke på F9 for at se, hvad en valgt del evalueres til:
Hvis du stadig har svært ved at finde ud af formlen, kan du se følgende vejledning for en detaljeret forklaring på, hvordan INDEX/MATCH-forbindelsen fungerer: INDEX & MATCH som et bedre alternativ til Excel VLOOKUP.
Som allerede nævnt er de andre formler i denne vejledning baseret på den samme logik, med blot nogle få ændringer:
Formel for unikke værdier - indeholder endnu en COUNTIF-funktion, der udelukker alle elementer, der optræder mere end én gang i kildelisten, fra den unikke liste: COUNTIF($A$2:$A$10, $A$2:$A$10)1
.
Formlen for bestemte værdier ignorerer tomme felter - her tilføjes en IF-funktion, der forhindrer, at tomme celler tilføjes til listen over bestemte værdier: IF($A$2:$A$13="",1,0)
.
Formlen for tydelige tekstværdier ignorerer tal - du bruger ISTEXT-funktionen til at kontrollere, om en værdi er tekst, og IF-funktionen til at afvise alle andre værdityper, herunder tomme celler: IF(ISTEXT($A$2:$A$13)=FALSE,1,0)
.
Udtrække særskilte værdier fra en kolonne med Excel's Advanced Filter
Hvis du ikke ønsker at spilde tid på at finde ud af de mystiske snørklede formler for særskilte værdier, kan du hurtigt få en liste over særskilte værdier ved at bruge det avancerede filter. De detaljerede trin følger nedenfor.
- Vælg den datakolonne, som du vil udtrække bestemte værdier fra.
- Skift til den Data faneblad> Sortere & Filtrere gruppe, og klik på Avanceret knap:
- Tjek Kopier til en anden placering valgknap.
- I den Liste rækkevidde boksen, skal du kontrollere, at kildeområdet vises korrekt.
- I den Kopier til boks , ind i den øverste celle i destinationsområdet. Husk, at du kun kan kopiere de filtrerede data til den øverste celle i aktivt ark .
- Vælg den Kun unikke poster
Vær opmærksom på, at selv om indstillingen for det avancerede filter hedder " Kun unikke poster ", uddrager den forskellige værdier , dvs. unikke værdier og første forekomst af dubletter.
Udtrække unikke og særskilte rækker med Duplicate Remover
I den sidste del af denne vejledning vil jeg vise dig vores egen løsning til at finde og udtrække særskilte og unikke værdier i Excel-ark. Denne løsning kombinerer alsidigheden af Excel-formler og enkelheden af det avancerede filter. Derudover giver den et par unikke funktioner som f.eks:
- Find og uddrag unikke / særskilte rækker baseret på værdier i en eller flere kolonner.
- Find , fremhæve , og kopi unikke værdier til et hvilket som helst andet sted, i samme eller et andet regneark.
Lad os nu se Duplicate Remover-værktøjet i aktion.
Lad os antage, at du har en oversigtstabel, der er oprettet ved at konsolidere data fra flere andre tabeller. Det er klart, at oversigtstabellen indeholder mange dubletter, og din opgave er at udtrække unikke rækker, der kun forekommer i tabellen én gang, eller særskilte rækker, herunder unikke og 1. dubletter. Uanset hvad, er arbejdet gjort i 5 hurtige trin med tilføjelsesprogrammet Duplicate Remover.
- Vælg en vilkårlig celle i kildetabellen, og klik på Duplicate Remover på knappen på Ablebits Data under fanen, i fanen Dedupe gruppe.
Guiden til fjernelse af dubletter vil køre og vælge hele tabellen. Så du skal bare klikke på Næste for at gå videre til næste trin.
- Unik
- Unikke +1st forekomster (særskilt)
I dette eksempel er det vores mål at udtrække unikke rækker der kun optræder i kildetabellen én gang, så vi vælger den Unik mulighed:
Tip. Som du kan se på ovenstående skærmbillede, er der også 2 muligheder for dublerede værdier , men husk det, hvis du skal afdrage et andet regneark.
I dette eksempel ønsker vi at finde unikke rækker baseret på værdier i alle 3 kolonner ( Løbenummer , Fornavn og Efternavn ), og derfor vælger vi alle.
- Fremhæv unikke værdier
- Vælg unikke værdier
- Identificere i en statuskolonne
- Kopier til en anden placering
Da vi udtrækker unikke rækker, skal du vælge Kopier til en anden placering , og angiv derefter, hvor præcist du vil kopiere dem - aktivt ark (vælg det Brugerdefineret placering og angiv den øverste celle i destinationsområdet), nyt regneark eller ny projektmappe.
I dette eksempel vælger vi det nye ark:
Kunne du lide denne hurtige og enkle måde at få en liste over unikke værdier eller rækker i Excel på? Hvis ja, opfordrer jeg dig til at downloade en evalueringsversion nedenfor og give det en chance. Duplicate Remover samt alle andre tidsbesparende værktøjer, som vi har, er inkluderet i Ultimate Suite for Excel.
Tilgængelige downloads
Find unikke værdier i Excel - prøvearbejdsbog (.xlsx-fil)
Ultimate Suite - evalueringsversion (.exe-fil)