Vba: unieke waarden uit een kolom halen


Je kunt de functie AdvancedFilter in VBA gebruiken om snel een lijst met unieke waarden uit een kolom in Excel te krijgen.

Hier is een gebruikelijke manier om dit te doen:

 Sub GetUniqueValues()

Range(" A1:A11 ").AdvancedFilter_
                Action:=xlFilterCopy, CopyToRange:=Range(" E1 "), Unique:= True

End Sub

Dit specifieke voorbeeld extraheert een lijst met unieke waarden uit het bereik A1:A11 en geeft deze weer vanuit cel E1 .

Het volgende voorbeeld laat zien hoe u deze syntaxis in de praktijk kunt gebruiken.

Voorbeeld: Haal unieke waarden uit een kolom met behulp van VBA

Stel dat we de volgende gegevensset in Excel hebben die informatie bevat over verschillende basketbalspelers:

Stel dat we een lijst met unieke waarden uit de kolom Team willen extraheren.

We kunnen hiervoor de volgende macro maken:

 Sub GetUniqueValues()

Range(" A1:A11 ").AdvancedFilter_
                Action:=xlFilterCopy, CopyToRange:=Range(" E1 "), Unique:= True

End Sub

Wanneer we deze macro uitvoeren, ontvangen we de volgende uitvoer:

Kolom E toont nu een lijst met unieke waarden uit de kolom Team in de originele dataset.

Houd er rekening mee dat de AdvancedFilter -methode hoofdlettergevoelig is.

Als we bijvoorbeeld de teamnamen „MAVS“ en „Mavs“ in dezelfde kolom hadden staan, zou deze specifieke macro alleen de eerste van de twee waarden retourneren die in de kolom Team verschijnen, omdat ze exact dezelfde karakters delen.

Opmerking : u kunt hier de volledige documentatie van de AdvancedFilter- methode in VBA vinden.

Aanvullende bronnen

In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende taken in VBA kunt uitvoeren:

VBA: cellen tellen met specifieke tekst
VBA: het aantal rijen binnen bereik tellen
VBA: unieke waarden binnen bereik tellen

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert