VBA Duplicaten verwijderen

Excel heeft een functie die wordt gebruikt voor het verwijderen van dubbele waarden uit de geselecteerde cellen, rijen of tabel. Wat als dit proces we automatiseren in VBA? Ja, het verwijderen van het duplicaat kan in VBA worden geautomatiseerd in de vorm van Macro. Tijdens het verwijderen van het duplicaat blijven de unieke waarden in de lijst of tabel staan ​​zodra deze is voltooid. Dit kan met behulp van de functie Duplicaten verwijderen in VBA.

Hoe Excel VBA gebruiken Duplicaten verwijderen?

We zullen leren hoe een VBA te gebruiken Duplicaten verwijderen met enkele voorbeelden in Excel.

U kunt deze VBA Duplicaten Excel-sjabloon hier downloaden - VBA Duplicaten Excel-sjabloon verwijderen

Voorbeeld # 1 - VBA Duplicaten verwijderen

We hebben een lijst met nummers van 1 tot 5 tot rij 20 alleen in kolom A. Zoals we in de onderstaande schermafbeelding kunnen zien, worden alle nummers meerdere keren herhaald.

Nu is het onze taak om het duplicaat door VBA uit de lijst te verwijderen. Ga hiervoor naar het VBA-venster door op F11 te drukken.

In dit voorbeeld zullen we zien, basisgebruik van hoe VBA Duplicaten kan werken voor getallen. Hiervoor hebben we een module nodig.

Stap 1: Open een nieuwe module in het menu Invoegen op de menutab Invoegen.

Stap 2: Zodra het is geopend, schrijft u de subcategorie van VBA Verwijderen Dupliceren zoals hieronder wordt weergegeven.

Code:

 Sub VBARemoveDuplicate1 () End Sub 

Stap 3: Tijdens het verwijderen van het duplicaat moeten we eerst de gegevens selecteren. Hiervoor zullen we in VBA de selectiefunctie gebruiken totdat deze omlaag gaat om de volledige gegevenslijst te selecteren, zoals hieronder wordt weergegeven.

Code:

 Sub VBARemoveDuplicate1 () Selection.End (xlDown). Selecteer End Sub 

Stap 4: Nu zullen we het bereik van geselecteerde cellen of kolommen A selecteren. Het gaat omlaag totdat we de gegevens in een bepaalde kolom hebben. Niet alleen tot rij 20.

Code:

 Sub VBARemoveDuplicate1 () Selection.End (xlDown) .Selecteer bereik (Selection, Selection.End (xlUp)). Selecteer End Sub 

Stap 5: Selecteer nu het cellenbereik in een momenteel geopend blad zoals hieronder wordt weergegeven. Hiermee wordt de volledige kolom geactiveerd. We hebben kolom A tot het einde geselecteerd.

Code:

 Sub VBARemoveDuplicate1 () Selection.End (xlDown) .Selecteer Range (Selection, Selection.End (xlUp)). Selecteer ActiveSheet.Range ("A: A"). Einde Sub 

Stap 6: Gebruik nu de functie RemoveDuplicate hier. Dit activeert de opdracht om de dubbele waarden uit de reeks van de kolommen 1 te verwijderen. Als er meer kolommen zijn, wordt het nummer toegevoegd en gescheiden door komma's tussen de haakjes als (1, 2, 3, …).

Code:

 Sub VBARemoveDuplicate1 () Selection.End (xlDown) .Selecteer bereik (Selection, Selection.End (xlUp)). Selecteer ActiveSheet.Range ("A: A"). Verwijder Duplicaten Kolommen: = 1, End Sub 

Stap 7: Nu gebruiken we de opdracht Koptekst die de cursor naar de bovenste cel van het blad verplaatst, die zich meestal in de koptekst van een tabel bevindt.

Code:

 Sub VBARemoveDuplicate1 () Selection.End (xlDown) .Selecteer bereik (Selection, Selection.End (xlUp)). Selecteer ActiveSheet.Range ("A: A"). Verwijder Duplicaten Kolommen: = 1, Koptekst: = xl Ja Eind Sub 

Stap 8: compileer nu de codestappen door op F8 te drukken. Klik als je klaar bent op de knop Afspelen om naar de code te gaan zoals hieronder wordt weergegeven.

Zoals we kunnen zien, wordt het dubbele nummer verwijderd uit kolom A en blijft de enige unieke telling over.

Voorbeeld # 2 - VBA Duplicaten verwijderen

In dit voorbeeld zullen we zien hoe dubbele waarden uit meer dan één kolom kunnen worden verwijderd. Hiervoor zullen we dezelfde dubbele lijst overwegen als in voorbeeld-1. Maar op een nieuwe manier hebben we nog 2 kolommen toegevoegd met dezelfde waarden zoals hieronder weergegeven.

Dit is een andere methode met een iets ander type codestructuur.

Stap 1: Open een nieuwe module in VBA en schrijf de subcategorie in de VBA Duplicaat verwijderen. Geef het indien mogelijk een volgnummer zodat het beter is om de juiste code te kiezen om uit te voeren.

Code:

 Sub VBARemoveDuplicate2 () End Sub 

Stap 2: Selecteer eerst het volledige blad in VBA zoals hieronder getoond.

Code:

 Sub VBARemoveDuplicate2 () Cellen. Selecteer End Sub 

Stap 3: Selecteer nu het momenteel geopende blad met de opdracht ActiveSheet en selecteer kolommen A tot C zoals hieronder weergegeven.

Code:

 Sub VBARemoveDuplicate2 () Cellen.Selecteer ActiveSheet.Range ("A: C"). Einde Sub 

Stap 4: Selecteer nu de opdracht RemoveDuplicates en selecteer daarna Kolommatrix van 1 tot 3 zoals hieronder getoond.

Code:

 Sub VBARemoveDuplicate2 () Cellen.Selecteer ActiveSheet.Range ("A: C"). Verwijder Duplicaten Kolommen: = Array (1, 2, 3), End Sub 

Stap 5: Bij het laatste gebruik moet de koptekstopdracht worden opgenomen in het verwijderingsproces van duplicaten als xlJa, zoals hieronder wordt getoond.

Code:

 Sub VBARemoveDuplicate2 () Cellen.Selecteer ActiveSheet.Range ("A: C"). Verwijder Duplicaten Kolommen: = Array (1, 2, 3), Koptekst: = xl Ja End Sub 

Stap 6: compileer nu de volledige code en voer deze uit. Zoals we hieronder kunnen zien, is het volledige blad geselecteerd, maar worden de dubbele waarden verwijderd uit kolommen A, B en C, waarbij alleen het unieke aantal wordt behouden.

Voorbeeld # 3 - VBA Duplicaten verwijderen

Dit is een andere methode om duplicaten te verwijderen, wat de eenvoudigste manier is om duplicaten in VBA te verwijderen. Hiervoor zullen we de gegevens gebruiken die we in voorbeeld-1 hebben gezien en die hieronder ook worden getoond.

Stap 1: Ga nu naar VBA en schrijf opnieuw subcategorie van VBA Duplicaten verwijderen. We hebben de volgorde gegeven aan elke code die we hebben laten zien dat ze een goede track hebben.

Code:

 Sub VBARemoveDuplicate3 () Einde Sub 

Stap 2: Dit is een vrij gelijkaardig patroon dat we in voorbeeld-2 hebben gezien, maar een snelkoppeling om een ​​code te schrijven voor het verwijderen van duplicaten. Begin hiervoor direct met het selecteren van het bereik van de kolom zoals hieronder getoond. We hebben de limiet behouden tot 100 e cel van kolom A vanaf 1 gevolgd door een punt (.)

Code:

 Sub VBARemoveDuplicate3 () Bereik ("A1: A100"). Einde Sub 

Stap 3: Selecteer nu de opdracht RemoveDuplicates zoals hieronder getoond.

Code:

 Sub VBARemoveDuplicate3 () Bereik ("A1: A100"). RemoveDuplicates End Sub 

Stap 4: Selecteer nu de kolommen A zoals bij opdracht Kolommen met de volgorde van 1. En daarna de koptekst van geselecteerde kolommen zoals hieronder getoond.

Code:

 Sub VBARemoveDuplicate3 () Bereik ("A1: A100"). RemoveDuplicates Kolommen: = 1, Kop: = xl Ja End Sub 

Stap 5: compileer het nu door op F8 te drukken en uit te voeren. We zullen zien dat onze code de dubbele nummers uit kolommen A heeft verwijderd en alleen unieke waarden zijn verkregen.

Voordelen van VBA Duplicaten verwijderen

  • Het is handig bij het snel verwijderen van duplicaten in elk cellenbereik.
  • Het is eenvoudig te implementeren.
  • Bij het werken aan enorme gegevensset, waar het handmatig verwijderen van het duplicaat moeilijk wordt en de bestanden worden opgehangen en VBA Duplicaten verwijderen werkt in een seconde om ons de unieke waarden te geven.

Nadelen van VBA Duplicaten verwijderen

  • Het is niet voordelig om VBA Duplicaten voor zeer kleine gegevens te gebruiken, omdat dit eenvoudig kan worden gedaan met de functie Duplicaat verwijderen die beschikbaar is in de menubalk Gegevens.

Dingen om te onthouden

  • Bereik kan op twee manieren worden geselecteerd. Zodra het is geselecteerd, wordt de limiet van cellen zoals weergegeven in voorbeeld-1 en andere selecteert de volledige kolom tot het einde zoals weergegeven in voorbeeld-1.
  • Zorg ervoor dat het bestand is opgeslagen in Excel met macro-ondersteuning zodat we de geschreven code meerdere keren kunnen gebruiken zonder deze te verliezen.
  • U kunt de waarde van de functie Koptekst op Ja houden, omdat deze ook de kopteller telt terwijl de dubbele waarden worden verwijderd. Als er geen dubbele waarde is met de naam van de naam van de koptekst, kan het niets schaden als u deze als Nee houdt .

Aanbevolen artikelen

Dit is een handleiding voor VBA Duplicaten verwijderen. Hier hebben we besproken hoe u Excel VBA Duplicaten kunt verwijderen, samen met praktische voorbeelden en een downloadbare Excel-sjabloon. U kunt ook onze andere voorgestelde artikelen doornemen -

  1. Werken met VBA Active Cell
  2. Een rij verwijderen in VBA
  3. Hoe Excel VBA Transpose gebruiken?
  4. Hoe 1004 Fout met behulp van VBA te repareren

Categorie: