Få en liste over unike verdier i Excel & trekke ut unike rader

  • Dele Denne
Michael Brown

Dette er den siste delen av Excel Unique Values-serien som viser hvordan du får en liste over distinkte / unike verdier i kolonne ved hjelp av en formel, og hvordan du justerer den formelen for forskjellige datasett. Du vil også lære hvordan du raskt får en distinkt liste ved hjelp av Excels avanserte filter, og hvordan du trekker ut unike rader med Duplicate Remover.

I et par nyere artikler diskuterte vi forskjellige metoder for å telle og finne unike verdier i Excel. Hvis du hadde en sjanse til å lese disse opplæringene, vet du allerede hvordan du får en unik eller distinkt liste ved å identifisere, filtrere og kopiere. Men det er litt lang, og langt fra den eneste, måten å trekke ut unike verdier i Excel. Du kan gjøre det mye raskere ved å bruke en spesiell formel, og om et øyeblikk vil jeg vise deg denne og et par andre teknikker.

    Tips. For raskt å få unike verdier i den nyeste versjonen av Excel 365 som støtter dynamiske arrays, bruk UNIQUE-funksjonen som forklart i opplæringen ovenfor.

    Hvordan få unike verdier i Excel

    For å unngå forvirring, la oss først bli enige om det vi kaller unike verdier i Excel. Unike verdier er verdiene som finnes i en liste bare én gang. For eksempel:

    For å trekke ut en liste over unike verdier i Excel, bruk en av følgende formler.

    Array unike verdier formel (fullført ved å trykke Ctrl + Shift + Entertrekke ut unike rader, velg Kopier til en annen plassering , og spesifiser så nøyaktig hvor du vil kopiere dem - aktivt ark (velg alternativet Egendefinert plassering , og spesifiser den øverste cellen til destinasjonen område), nytt regneark eller ny arbeidsbok.

    I dette eksemplet, la oss velge det nye arket:

  • Klikk Fullfør -knappen, og du er ferdig!
  • Likte du denne raske og enkle måten å få en liste over unike verdier eller rader i Excel? I så fall oppfordrer jeg deg til å laste ned en evalueringsversjon nedenfor og prøve den. Duplicate Remover så vel som alle andre tidsbesparende verktøy som vi har er inkludert i Ultimate Suite for Excel.

    Tilgjengelige nedlastinger

    Finn unike verdier i Excel - eksempelarbeidsbok (.xlsx-fil)

    Ultimate Suite - evalueringsversjon (.exe-fil)

    ):

    =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)), "")

    Formel for vanlige unike verdier (fullført ved å 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)), "")

    I formlene ovenfor, følgende referanser brukes:

    • A2:A10 - kildelisten.
    • B1 - den øverste cellen i den unike listen minus 1. I dette eksemplet starter vi den unike listen. i B2, og derfor leverer vi B1 til formelen (B2-1=B1). Hvis den unike listen din begynner, for eksempel i celle C3, endrer du $B$1:B1 til $C$2:C2.

    Merk. Fordi formelen refererer til cellen over den første cellen i den unike listen, som vanligvis er kolonneoverskriften (B1 i dette eksemplet), må du sørge for at overskriften har et unikt navn som ikke vises noe annet sted i kolonnen.

    I dette eksemplet trekker vi ut unike navn fra kolonne A (mer presist fra område A2:A20), og følgende skjermbilde viser matriseformelen i aksjon:

    Den detaljerte forklaringen av formelens logikk er gitt i et eget avsnitt, og her er hvordan du bruker formelen til å trekke ut unike verdier i Excel-regnearkene dine:

    • Tweak en av formlene i henhold til datasettet ditt.
    • Skriv inn formelen i den første cellen i den unike listen (B2 i dette eksemplet).
    • Hvis du bruker matriseformelen, trykk Ctrl + Shift + Enter . Hvis du har valgt den vanlige formelen, trykk på Enter-tasten som vanlig.
    • Kopier formelen ned så langt som nødvendig ved å dra i fyllhåndtaket. Siden beggeunike verdiformler er vi innkapslet i HVISER-funksjonen, du kan kopiere formelen til slutten av tabellen, og den vil ikke fylle dataene dine med feil uansett hvor få unike verdier som er trukket ut.

    Hvordan få distinkte verdier i Excel (unike + 1. dupliserte forekomster)

    Som du kanskje allerede har gjettet fra overskriften til denne delen, er distinkte verdier i Excel alle forskjellige verdier i en liste, dvs. unike verdier og første forekomster av dupliserte verdier. For eksempel:

    For å få en distinkt liste i Excel, bruk følgende formler.

    Array distinkt formel (krever å trykke Ctrl + Shift + Enter ):

    =IFERROR(INDEX($A$2:$A$10, MATCH(0, COUNTIF($B$1:B1, $A$2:$A$10), 0)), "")

    Vanlig distinkt formel:

    =IFERROR(INDEX($A$2:$A$10, MATCH(0, INDEX(COUNTIF($B$1:B1, $A$2:$A$10), 0, 0), 0)), "")

    Hvor:

    • A2:A10 er kildelisten.
    • B1 er cellen over den første cellen i den distinkte listen. I dette eksemplet begynner den distinkte listen i celle B2 (det er den første cellen der du skriver inn formelen), så du refererer til B1.

    Trekk ut distinkte verdier i en kolonne som ignorerer tomme celler

    Hvis kildelisten din inneholder tomme celler, vil den distinkte formelen vi nettopp har diskutert returnere en null for hver tomme rad, noe som kan være et problem. For å fikse dette, forbedre formelen litt ytterligere:

    Arrayformel for å trekke ut distinkte verdier ekskluderende blanks :

    =IFERROR(INDEX($A$2:$A$10, MATCH(0, COUNTIF($B$1:B1, $A$2:$A$10&"") + IF($A$2:$A$10="",1,0), 0)), "")

    Få en liste over distinkte tekstverdier som ignorerer tall ogblanks

    På lignende måte kan du få en liste over distinkte verdier ekskluderer tomme celler og celler med tall :

    =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 rask påminnelse, i formlene ovenfor er A2:A10 kildelisten, og B1 er cellen rett over den første cellen i den distinkte listen.

    Følgende skjermbilde viser resultatet av begge formlene:

    Hvordan trekke ut store og små bokstaver i forskjellige verdier i Excel

    Når du arbeider med store og små bokstaver, for eksempel passord, brukernavn eller filnavn, må du kanskje få en liste av store og små bokstaver. For dette bruker du følgende matriseformel, der A2:A10 er kildelisten, og B1 er cellen over den første cellen i den distinkte listen:

    Arrayformel for å få store og små bokstaver (krever å trykke 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)), "")

    Hvordan den unike/distinkte formelen fungerer

    Denne delen er skrevet spesielt for de som er nysgjerrige og gjennomtenkte Excel-brukere som ikke bare ønsker å vite formelen, men fullt ut forstår dens muttere og bolter.

    Det sier seg selv at formlene for å trekke ut unike og distinkte verdier i Excel verken er trivielle eller enkle. Men hvis du ser nærmere på det, vil du kanskje legge merke til at alle formlene er basert på samme tilnærming - ved å bruke INDEX/MATCH i kombinasjon med COUNTIF, eller COUNTIF + IF-funksjoner.

    For vår dybdeanalyse, la oss bruke matriseformelen somtrekker ut en liste over distinkte verdier fordi alle andre formler som diskuteres i denne opplæringen er forbedringer eller varianter av denne grunnleggende:

    =IFERROR(INDEX($A$2:$A$10, MATCH(0, COUNTIF($B$1:B1, $A$2:$A$10), 0)), "")

    For det første, la oss kaste bort den åpenbare IFERROR-funksjonen, som brukes med et enkelt formål for å eliminere #N/A-feil når antallet celler der du har kopiert formelen overstiger antallet distinkte verdier i kildelisten.

    Og nå, la oss bryte ned kjernedelen av vår distinkte formel:

    1. ANTALLHVIS(område, kriterier) returnerer antall celler innenfor et område som oppfyller en spesifisert betingelse.

      I dette eksemplet returnerer COUNTIF($B$1:B1, $A$2:$A$10) en matrise med 1-er og 0-er basert på om noen av verdiene i kildelisten ($A$2:$A$10) vises et sted i den distinkte listen ($B$1:B1). Hvis verdien blir funnet, returnerer formelen 1, ellers - 0.

      Spesielt i celle B2 blir COUNTIF($B$1:B1, $A$2:$A$10):

      COUNTIF("Distinct", {"Ronnie"; "David"; "Sally"; "Jeremy"; "Robert"; "David"; "Robert"; "Tom"; "Sally"})

      og returnerer:

      {0;0;0;0;0;0;0;0;0}

      fordi ingen av elementene i kildelisten ( kriterier ) vises i området hvor funksjonen ser etter en match. I dette tilfellet består range ($B$1:B1) av et enkelt element - "Distinct".

    2. MATCH(lookup_value, lookup_array, [match_type]) returnerer den relative posisjonen til oppslagsverdien i matrisen.

    I dette eksemplet er oppslagsverdien 0, og følgelig:

    MATCH(0,COUNTIF($B$1:B1, $A$2:$A$10), 0)

    blir til:

    MATCH(0, { 0 ;0;0;0;0;0;0;0;0},0)

    og returnerer

    fordi vår MATCHfunksjon får den første verdien som er nøyaktig lik oppslagsverdien (som du husker er oppslagsverdien 0).

  • INDEKS(matrise; radnummer; [kolonne_nummer]) returnerer en verdi i en matrise basert på de angitte rad- og (valgfritt) kolonnenumrene.
  • I dette eksemplet blir INDEX($A$2:$A$10, 1)

    :

    INDEX({"Ronnie"; "David"; "Sally"; "Jeremy"; "Robert"; "David"; "Robert"; "Tom"; "Sally"}, 1)

    og returnerer "Ronnie".

    Når formelen kopieres ned i kolonnen, utvides den distinkte listen ($B$1:B1) fordi den andre cellereferansen (B1) er en relativ referanse som endres i henhold til den relative plasseringen av cellen der formelen flyttes.

    Så når den kopieres til celle B3, endres COUNTIF($B$1: B1 , $A$2:$A$10) til COUNTIF($B$1: B2 , $A$2:$A$10), og blir:

    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 en "Ronnie" er funnet i område $B$1:B2.

    Og deretter, MATCH(0;{1; 0 ;0;0;0;0;0;0;0},0) returnerer 2 , fordi 2 er den relative posisjonen til den første 0-en i matrisen.

    Og til slutt returnerer INDEX($A$2:$A$10, 2) verdien fra den andre raden, som er "David".

    Tips. For bedre forståelse av formelens logikk, kan du velge ulike deler av formelen i formellinjen og trykke F9 for å se hva en valgt del evaluerer til:

    Hvis du fortsatt har problemer med å finne ut ut av formelen, kan du sjekke ut følgende veiledning for detaljert forklaring av hvordan INDEX/MATCH-forbindelsen fungerer: INDEX & MATCH som en bedrealternativ til Excel VLOOKUP.

    Som allerede nevnt, er de andre formlene som er diskutert i denne opplæringen basert på samme logikk, med bare noen få modifikasjoner:

    Formel for unike verdier - inneholder en COUNTIF-funksjon til som ekskluderer fra den unike listen alle elementer som vises i kildelisten mer enn én gang: COUNTIF($A$2:$A$10, $A$2:$A$10)1 .

    Distinct values-formel ignorerer blanke - her legger du til en IF-funksjon som forhindrer at tomme celler legges til den distinkte listen: IF($A$2:$A$13="",1,0) .

    Formel for distinkte tekstverdier som ignorerer tall - du bruker ISTEXT-funksjonen for å sjekke om en verdi er tekst, og HVIS-funksjonen for å avvise alle andre verdityper, inkludert tomme celler: IF(ISTEXT($A$2:$A$13)=FALSE,1,0) .

    Trekk ut distinkte verdier fra en kolonne med Excels avanserte filter

    Hvis du ikke vil kaste bort tid på å finne ut de mystiske vendingene til de distinkte verdiformlene, kan du raskt få en liste over distinkte verdier ved å bruke Avansert filter. De detaljerte trinnene følger nedenfor.

    1. Velg kolonnen med data du vil trekke ut distinkte verdier fra.
    2. Bytt til Data -fanen > Sorter & Filter -gruppen, og klikk på Avansert -knappen:

  • I dialogboksen Avansert filter velger du følgende alternativer:
    • Merk av Kopier til en annen plassering alternativknapp.
    • I boksen Listeområde kontrollerer du at kildeområdet vises riktig .
    • I Kopier til boks , skriv inn den øverste cellen i destinasjonsområdet. Husk at du bare kan kopiere de filtrerte dataene til det aktive arket .
    • Velg Kun unike poster

  • Til slutt klikker du på OK -knappen og kontrollerer resultatet:
  • Vær oppmerksom på at selv om Avansert Filterets alternativ heter " kun unike poster ", det trekker ut distinkte verdier , dvs. unike verdier og første forekomst av dupliserte verdier.

    Takk ut unike og distinkte rader med Duplicate Remover

    I den siste delen av denne opplæringen, la meg vise deg vår egen løsning for å finne og trekke ut distinkte og unike verdier i Excel-ark. Denne løsningen kombinerer allsidigheten til Excel-formler og enkelheten til det avanserte filteret. I tillegg gir den et par unike funksjoner som:

    • Finn og trekk ut unike / distinkte rader basert på verdier i én eller flere kolonner.
    • Finn , marker og kopier unike verdier til et hvilket som helst annet sted, i samme eller annen arbeidsbok.

    Og nå, la oss se Duplicate Remover-verktøyet i aksjon.

    Forutsatt at du har en sammendragstabell laget ved å konsolidere data fra flere andre tabeller. Det er klart at den sammendragstabellen inneholder mange dupliserte rader, og oppgaven din er å trekke ut unike rader som vises i tabellen bare én gang, eller distinkte raderinkludert unike og første duplikatforekomster. Uansett, med Duplicate Remover-tillegget gjøres jobben i 5 raske trinn.

    1. Velg en hvilken som helst celle i kildetabellen og klikk på Duplicate Remover -knappen på Ablebits Data -kategorien, i Dedupe -gruppen.

    Duplicate Remover-veiviseren vil kjøre og velge hele bordet. Så klikk bare Neste for å fortsette til neste trinn.

  • Velg verditypen du vil finne, og klikk på Neste :
    • Unik
    • Unike +1.-forekomster (distinkt)

    I dette eksemplet tar vi sikte på å trekke ut unike rader som vises i kildetabellen bare én gang, så vi velger alternativet Unik :

    Tips. Som du kan se i skjermbildet ovenfor, er det også 2 alternativer for dupliserte verdier , bare husk det hvis du trenger å dedupere et annet regneark.

  • Velg én eller flere kolonner som skal sjekkes for unike verdier.

    I dette eksemplet ønsker vi å finne unike rader basert på verdier i alle 3 kolonnene ( Ordrenummer , Fornavn og Etternavn ), derfor vi velger alle.

  • Velg handlingen som skal utføres på de funnet unike verdiene. Følgende alternativer er tilgjengelige for deg:
    • Uthev unike verdier
    • Velg unike verdier
    • Identifiser i en statuskolonne
    • Kopier til en annen plassering

    Fordi vi er

  • Michael Brown er en dedikert teknologientusiast med en lidenskap for å forenkle komplekse prosesser ved hjelp av programvareverktøy. Med mer enn ti års erfaring i teknologibransjen, har han forbedret ferdighetene sine i Microsoft Excel og Outlook, samt Google Sheets og Docs. Michaels blogg er dedikert til å dele sin kunnskap og ekspertise med andre, og gir enkle å følge tips og veiledninger for å forbedre produktivitet og effektivitet. Enten du er en erfaren profesjonell eller nybegynner, tilbyr Michaels blogg verdifull innsikt og praktiske råd for å få mest mulig ut av disse viktige programvareverktøyene.