Klasse Filter (Excel VBA)

Die Klasse Filter stellt einen Filter für eine einzelne Spalte dar.

Set

Um eine Filter -Klassenvariable zu verwenden, muss sie zuerst instanziert werden, beispielsweise

Dim flt as Filter
Set flt = ActiveSheet.AutoFilter.Filters(Index:=1)

Die folgenden Prozeduren können zum Festlegen der Filter Klassenvariablen verwendet werden : Filters.Item und AutoFilter.Filters

For Each

Hier ist ein Beispiel für die Verarbeitung der Filter -Elemente in einer Sammlung

Dim flt As Filter
For Each flt In ActiveSheet.AutoFilter.Filters
	
Next flt

Count

Gibt die Anzahl der Objekte in der Auflistung zurück.

Dim lngCount As Long
lngCount = ActiveSheet.AutoFilter.Filters(1).Count

Criteria1

Gibt den ersten gefilterten Wert für die angegebene Spalte in einem gefilterten Bereich zurück.

Dim varCriteria1 As Variant
varCriteria1 = ActiveSheet.AutoFilter.Filters(1).Criteria1

Criteria2

Gibt den zweiten gefilterten Wert für die angegebene Spalte in einem gefilterten Bereich zurück.

Beim Versuch, auf die Criteria2-Eigenschaft eines Filters zuzugreifen, der nur ein Kriterium verwendet, tritt ein Fehler auf.

On

True, wenn der angegebene Filter aktiviert ist.

Dim booOn As Boolean
booOn = ActiveSheet.AutoFilter.Filters(1).On

Operator

Gibt einen XlAutoFilterOperator -Wert zurück, der den Operator darstellt, der die beiden vom angegebenen Filter angewendeten Kriterien zuordnet.

Möglichen Werte sind xlAnd - Logische und von Criteria1 und Criteria2, xlBottom10Items - Elemente mit den niedrigsten Werten (Anzahl der in Criteria1 angegebenen Elemente), xlBottom10Percent - Elemente mit niedrigstem Wert (Prozentsatz in Criteria1), xlFilterAutomaticFontColor, xlFilterCellColor - Farbe der Zelle, xlFilterDynamic - Dynamischer Filter, xlFilterFontColor - Farbe der Schriftart, xlFilterIcon - Filtersymbol, xlFilterNoFill, xlFilterNoIcon, xlFilterValues - Filterwerte, xlOr - Logisch oder von Criteria1 oder Criteria2, xlTop10Items - Elemente mit den höchsten Werten (Anzahl der in Criteria1 angegebenen Elemente), xlTop10Percent - Am höchsten bewertete Elemente angezeigt (Prozentsatz in Criteria1).
ActiveSheet.AutoFilter.Filters(1).Operator = xlAnd

Parent

Gibt das übergeordnete Objekt für das angegebene Objekt zurück.

Filters.Count

Gibt einen Long-Wert zurück, der die Anzahl der Objekte in der Auflistung darstellt.

Dim lngCount As Long
lngCount = ActiveSheet.AutoFilter.Filters.Count

Filters.Item

Gibt ein einzelnes Objekt aus einer Auflistung zurück.

Syntax : expression.Item (Index)

Index: Die Indexnummer des Objekts.

Dim fltItem As Filter
Set fltItem = ActiveSheet.AutoFilter.Filters(Index:=1)

Filters.Parent

Gibt das übergeordnete Objekt für das angegebene Objekt zurück.