VBA Fjern duplikater

Excel har en funksjon som brukes til å fjerne duplikatverdiene fra de valgte cellene, radene eller tabellen. Hva om denne prosessen vi automatiserer i VBA? Ja, prosessen med å fjerne duplikatet kan automatiseres i VBA i en form for makro. I ferd med å fjerne duplikatet, når de er fullført, forblir de unike verdiene i listen eller tabellen. Dette kan være i ved hjelp av Remove Duplicates-funksjonen i VBA.

Hvordan bruker du Excel VBA Fjern duplikater?

Vi lærer hvordan du bruker VBA Fjern duplikater med få eksempler i Excel.

Du kan laste ned denne VBA Fjern duplikater Excel-mal her - VBA Fjern duplikater Excel-mal

Eksempel 1 - VBA Fjern duplikater

Vi har en liste over tall som starter fra 1 til 5 til rad 20 bare i kolonne A. Som vi kan se på skjermbildet nedenfor, blir alle tallene gjentatt flere ganger.

Nå er jobben vår å fjerne duplikatet fra listen av VBA. Gå til VBA-vinduet ved å trykke på F11-tasten.

I dette eksemplet vil vi se grunnleggende bruk av hvordan VBA Remove Duplicates kan fungere for tall. For dette trenger vi en modul.

Trinn 1: Åpne en ny modul fra Sett inn-menyen som er i Sett inn menyfanen.

Trinn 2: Når den er åpen, skriv underkategorien til VBA Fjern duplikat som vist nedenfor.

Kode:

 Sub VBARemoveDuplicate1 () Slutt Sub 

Trinn 3: I prosessen med å fjerne duplikatet, må vi først velge dataene. For dette vil vi i VBA Valgfunksjon til den går ned for å velge fullstendig dataliste som vist nedenfor.

Kode:

 Sub VBARemoveDuplicate1 () Selection.End (xlDown). Velg Slutt Sub 

Trinn 4: Nå velger vi området for valgte celler eller kolonner A. Det vil gå ned til vi har dataene i en bestemt kolonne. Ikke bare til rad 20.

Kode:

 Sub VBARemoveDuplicate1 () Selection.End (xlDown). Select Range (Selection, Selection.End (xlUp)). Velg End Sub 

Trinn 5: Velg nå cellene i et for øyeblikket åpnet ark som vist nedenfor. Dette vil aktivere den komplette kolonnen. Vi har valgt kolonne A til slutten.

Kode:

 Sub VBARemoveDuplicate1 () Selection.End (xlDown). Select Range (Selection, Selection.End (xlUp)). Velg ActiveSheet.Range ("A: A"). Slutt sub 

Trinn 6: Bruk nå RemoveDuplicate-funksjonen her. Dette vil aktivere kommandoen for å fjerne duplikatverdiene fra sekvensen til kolonnene 1. Hvis det er flere kolonner, vil tallet legges til og skilles med komma i parentesene som (1, 2, 3, …).

Kode:

 Sub VBARemoveDuplicate1 () Selection.End (xlDown). Select Range (Selection, Selection.End (xlUp)). Velg ActiveSheet.Range ("A: A"). FjernDuplicates Columns: = 1, End Sub 

Trinn 7: Nå bruker vi Header-kommandoen som vil flytte markøren til den øverste cellen på arket, som for det meste ligger i overskriften på en hvilken som helst tabell.

Kode:

 Sub VBARemoveDuplicate1 () Selection.End (xlDown). Select Range (Selection, Selection.End (xlUp)). Velg ActiveSheet.Range ("A: A"). RemoveDuplicates Columns: = 1, Header: = xlYes End Sub 

Trinn 8: Sett sammen kodetrinnene ved å trykke på F8-tasten. Når du er ferdig, klikker du på Play-knappen for å kjøre til kode som vist nedenfor.

Som vi ser, blir duplikatnummeret slettet fra kolonne A, og det eneste en unik telling er igjen.

Eksempel # 2 - VBA Fjern duplikater

I dette eksemplet vil vi se hvordan du fjerner dupliserte verdier fra mer enn en kolonne. For dette vil vi vurdere den samme duplikatlisten som ble brukt i eksempel-1. Men på en ny måte har vi lagt til ytterligere 2 kolonner med de samme verdiene som vist nedenfor.

Dette er en annen metode med en litt annen type kodestruktur.

Trinn 1: Åpne en ny modul i VBA og skriv underkategorien i VBA Fjern duplikat. Hvis det er mulig, så gi det et sekvensnummer slik at det er bedre å velge riktig kode som skal kjøres.

Kode:

 Sub VBARemoveDuplicate2 () Slutt Sub 

Trinn 2: Velg først det komplette arket i VBA som vist nedenfor.

Kode:

 Sub VBARemoveDuplicate2 () Cells.Select End Sub 

Trinn 3: Velg nå det åpnede arket med ActiveSheet-kommando og velg kolonnene A til C som vist nedenfor.

Kode:

 Sub VBARemoveDuplicate2 () Cells.Select ActiveSheet.Range ("A: C"). Slutt sub 

Trinn 4: Velg nå kommandoen RemoveDuplicates, og velg deretter Column array fra 1 til 3 som vist nedenfor.

Kode:

 Sub VBARemoveDuplicate2 () Cells.Select ActiveSheet.Range ("A: C"). RemoveDuplicates Columns: = Array (1, 2, 3), End Sub 

Trinn 5: Ved sist bruk, skal Header-kommandoen inkluderes i prosessen med å fjerne duplikater som xlYes som vist nedenfor.

Kode:

 Sub VBARemoveDuplicate2 () Cells.Select ActiveSheet.Range ("A: C"). RemoveDuplicates Columns: = Array (1, 2, 3), Header: = xlYes End Sub 

Trinn 6: Sett sammen den komplette koden og kjør. Som vi kan se nedenfor, er det komplette arket valgt, men duplikatverdiene blir fjernet fra kolonnene A, B og C, og holder bare unikt antall.

Eksempel # 3 - VBA Fjern duplikater

Dette er en annen metode for å fjerne duplikat, som er den enkleste måten å fjerne duplikat i VBA. For dette vil vi bruke dataene som vi så i eksempel-1 og også vist nedenfor.

Trinn 1: Nå skal du gå VBA og skrive underkategori igjen av VBA Fjern duplikater. Vi har gitt sekvensen til hver kode vi viste for å ha et skikkelig spor.

Kode:

 Sub VBARemoveDuplicate3 () Slutt Sub 

Trinn 2: Dette er ganske lignende mønster som vi har sett i eksempel-2, men en snarvei måte å skrive en kode for å fjerne duplikat. For å begynne med dette, starter du direkte å velge kolonneområdet som vist nedenfor. Vi har holdt grensen til 100. celle i kolonne A med start fra 1 etterfulgt av en prikk (.)

Kode:

 Sub VBARemoveDuplicate3 () Range ("A1: A100"). Slutt sub 

Trinn 3: Velg nå kommandoen FjernDuplikater som vist nedenfor.

Kode:

 Sub VBARemoveDuplicate3 () Range ("A1: A100"). FjernDuplikater End Sub 

Trinn 4: Velg nå kolonnene A som med kommandoen Kolonner med sekvensen av 1. Og etter det inkluderer overskriften på valgte kolonner så vel som vist nedenfor.

Kode:

 Sub VBARemoveDuplicate3 () Range ("A1: A100"). FjernDuplikater Kolonner: = 1, Header: = xlYes Slutt Sub 

Trinn 5: Sett sammen den nå ved å trykke på F8-tasten og kjøre. Vi ser at koden vår har fjernet duplikatnumrene fra kolonnene A og bare unike verdier oppnås.

Fordeler med VBA Fjern duplikater

  • Det er nyttig når du raskt vil fjerne duplikatene i alle celler.
  • Det er enkelt å implementere.
  • Når du jobber med et enormt datasett, hvor det blir vanskelig å fjerne duplikatet manuelt, og det henger filene og VBA Remove Duplicates fungerer på et sekund for å gi oss de unike verdiene.

Ulemper ved VBA Fjern duplikater

  • Det er ikke gunstig å bruke VBA Remove Duplicates for veldig små data, da det lett kan gjøres ved å fjerne Duplicate-funksjonen som er tilgjengelig i Data-menylinjen.

Ting å huske

  • Område kan velges på to måter. Når den er valgt, er grensen for celler som vist i eksempel-1 og andre å velge hele kolonnen til slutten som vist i eksempel-1.
  • Forsikre deg om at filen er lagret i Macro-Enabled Excel som lar oss bruke den skrevne koden flere ganger uten å miste den.
  • Du kan beholde verdien av funksjonstittel som Ja, da den også teller overskriften mens du fjerner duplikatverdiene. Hvis det ikke er en duplikatverdi med navnet på Headers-navnet, vil det å beholde det som Nei ikke skade noe.

Anbefalte artikler

Dette har vært en guide til VBA Fjern duplikater. Her har vi diskutert hvordan du bruker Excel VBA Remove Duplicates sammen med praktiske eksempler og nedlastbar Excel-mal. Du kan også gå gjennom andre foreslåtte artikler -

  1. Jobber med VBA Active Cell
  2. Slette en rad i VBA
  3. Hvordan bruke Excel VBA-transponering?
  4. Hvordan fikse 1004 feil ved bruk av VBA

Kategori: