Vba: so verwenden sie autofilter mit mehreren kriterien


Sie können die folgenden Methoden verwenden, um AutoFilter in VBA mit mehreren Kriterien zu verwenden:

Methode 1: Verwenden Sie AutoFilter mit mehreren Kriterien in einer einzelnen Spalte

 Sub FilterMultipleCriteria()

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

End Sub

Dieses spezielle Makro filtert alle Zeilen im Bereich A1:C11 , wobei der Wert der ersten Spalte „A“ oder „C“ entspricht.

Methode 2: Verwenden Sie AutoFilter mit mehreren Kriterien in mehreren Spalten

 Sub FilterMultipleCriteria()

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

End Sub

Dieses spezielle Makro filtert den Bereich A1:C11 , um nur Zeilen anzuzeigen, in denen die erste Spalte „A“ und die zweite Spalte „Guard“ entspricht.

Die folgenden Beispiele zeigen, wie Sie jede dieser Methoden in der Praxis mit dem folgenden Datensatz in Excel anwenden können:

Beispiel 1: Verwenden Sie AutoFilter mit mehreren Kriterien in einer Spalte

Nehmen wir an, wir möchten den Datensatz so filtern, dass nur Zeilen angezeigt werden, deren erste Spalte „A“ oder „C“ entspricht.

Dazu können wir das folgende Makro erstellen:

 Sub FilterMultipleCriteria()

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

End Sub

Wenn wir dieses Makro ausführen, erhalten wir die folgende Ausgabe:

Beachten Sie, dass der Datensatz so gefiltert wurde, dass nur Zeilen angezeigt werden, deren erste Spalte „A“ oder „C“ entspricht.

Hinweis : Wir haben nur zwei mögliche Werte in die Funktion Array() aufgenommen, Sie können aber gerne so viele einschließen, wie Sie möchten.

Beispiel 2: Autofilter mit mehreren Kriterien in mehreren Spalten verwenden

Nehmen wir an, wir möchten den Datensatz so filtern, dass nur Zeilen angezeigt werden, in denen der Spaltenwert „Team“ gleich „A“ und der Spaltenwert „Position“ gleich „Guard“ ist.

Dazu können wir das folgende Makro erstellen:

 Sub FilterMultipleCriteria()

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

End Sub

Wenn wir dieses Makro ausführen, erhalten wir die folgende Ausgabe:

Mir ist aufgefallen, dass der Datensatz so gefiltert wurde, dass nur Zeilen angezeigt werden, in denen der Wert in der Spalte „Team“ gleich „A“ und der Wert in der Spalte „Position“ gleich „Guard“ ist.

Hinweis : Die vollständige Dokumentation zur VBA- AutoFilter- Methode finden Sie hier .

Zusätzliche Ressourcen

In den folgenden Tutorials wird erläutert, wie Sie andere häufige Aufgaben in VBA ausführen:

VBA: So filtern Sie Pivot-Tabellen
VBA: So löschen Sie Filter
VBA: So entfernen Sie doppelte Werte

Einen Kommentar hinzufügen

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