Vba: autofilter gebruiken met meerdere criteria


U kunt de volgende methoden gebruiken om AutoFilter in VBA met meerdere criteria te gebruiken:

Methode 1: Gebruik AutoFilter met meerdere criteria in één kolom

 Sub FilterMultipleCriteria()

With Range(" A1:C11 ")
    .AutoFilter Field:=1, Criteria1:=Array(" A ", " C "), Operator:=xlFilterValues
End With

End Sub

Deze specifieke macro filtert alle rijen in het bereik A1:C11 waarbij de waarde van de eerste kolom gelijk is aan „A“ of „C“.

Methode 2: Gebruik AutoFilter met meerdere criteria in meerdere kolommen

 Sub FilterMultipleCriteria()

With Range(" A1:C11 ")
    .AutoFilter Field:=1, Criteria1:=" A "
    .AutoFilter Field:=2, Criteria1:=" Guard "
End With

End Sub

Deze specifieke macro filtert het bereik A1:C11 om alleen rijen weer te geven waarbij de eerste kolom gelijk is aan „A“ en de tweede kolom gelijk is aan „Bewaker“.

De volgende voorbeelden laten zien hoe u elk van deze methoden in de praktijk kunt gebruiken met de volgende gegevensset in Excel:

Voorbeeld 1: Gebruik AutoFilter met meerdere criteria in een kolom

Stel dat we de gegevensset willen filteren, zodat alleen rijen worden weergegeven waarvan de eerste kolom gelijk is aan ‚A‘ of ‚C‘.

We kunnen hiervoor de volgende macro maken:

 Sub FilterMultipleCriteria()

With Range(" A1:C11 ")
    .AutoFilter Field:=1, Criteria1:=Array(" A ", " C "), Operator:=xlFilterValues
End With

End Sub

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

Houd er rekening mee dat de gegevensset is gefilterd om alleen rijen weer te geven waarvan de eerste kolom gelijk is aan ‚A‘ of ‚C‘.

Opmerking : we hebben slechts twee mogelijke waarden opgenomen in de functie Array() , maar u kunt er gerust zoveel opnemen als u wilt.

Voorbeeld 2: Gebruik autofilter met meerdere criteria in meerdere kolommen

Stel dat we de gegevensset willen filteren, zodat alleen rijen worden weergegeven waarin de kolomwaarde Team gelijk is aan A en de kolomwaarde Positie gelijk is aan Bewaker.

We kunnen hiervoor de volgende macro maken:

 Sub FilterMultipleCriteria()

With Range(" A1:C11 ")
    .AutoFilter Field:=1, Criteria1:=" A "
    .AutoFilter Field:=2, Criteria1:=" Guard "
End With

End Sub

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

Ik heb gemerkt dat de dataset is gefilterd om alleen rijen weer te geven waarbij de waarde in de kolom Team gelijk is aan A en de waarde in de kolom Positie gelijk is aan Bewaker.

Opmerking : u kunt hier de volledige documentatie voor de VBA AutoFilter- methode vinden.

Aanvullende bronnen

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

VBA: draaitabellen filteren
VBA: filters wissen
VBA: hoe dubbele waarden te verwijderen

Einen Kommentar hinzufügen

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