Willkommen

Pivottabelle

Spezialfilter

Formeln

Zellformate

Bedingte Formate

Gültigkeit

Programmierung

UDF - Funktionen

Tipps & Tricks

Webabfrage

Fehlersuche

Farbindex

Shortcuts

Limitationen

Downloads

Links

Kontakt

Disclaimer

Impressum

Autofilter im Makro
Nachfolgend einige Codesequenzen, um den Autofilter in der Programmierung anzusprechen.
 
 
 
 
 
 
Code1)
Setzt und entfernt den Autofilter im Bereich A4 bis E4 im aktiven Tabellenblatt.
 
Public Sub Autofilter1()
  Range("A4:E4").Autofilter
End Sub
 
 
Code2)
Filtert die 2te Spalte im Bereich A4 bis E4, also Spalte B nach dem Suchkriterium "Meier".
 
Public Sub Autofilter2()
  Range("A4:E4").Autofilter Field:=2, Criteria1:="Meier"
End Sub
 
 
Code3)
Filtert die 4te Spalte im Bereich A4 bis E4, also Spalte D nach dem Suchkriterium "Wareneingang".
 
Public Sub Autofilter3()
  Range("A4:E4").Autofilter Field:=4, Criteria1:="Wareneingang"
End Sub
 
 
Code4)
Filtert die 4te Spalte im Bereich A4 bis E4, also Spalte D nach dem Suchkriterium in Zelle G1. Hier "Wareneingang".
 
Public Sub Autofilter4()
  Range("A4:E4").Autofilter Field:=4, Criteria1:=Range("G1")
End Sub
 
 
Code5)
Filtert die 3te Spalte im Bereich A4 bis E4, also Spalte C nach den Kriterien "Toni" oder "Hugo". Es werden beide Treffer angezeigt.
 
Public Sub Autofilter5()
  Range("A4:E4").Autofilter Field:=3, Criteria1:="Toni", Operator:=xlOr, Criteria2:="Hugo"
End Sub
 
 
Code6)
Filtert die 5te Spalte im Bereich A4 bis E4, also Spalte E nach dem Kriterium: Größer als Datumseintrag in Zelle G2.
CDbl wandelt explizit den Eintrag in eine Dezimalzahl. Excel arbeitet bei Datumsformaten mit Ganz- bzw Nachkommazahlen.
 
Public Sub Autofilter6()
  Range("A4:E4").Autofilter Field:=5, Criteria1:=">" & CDbl(Range("G2"))
End Sub
 
 
Code7)
Filtert die 5te Spalte im Bereich A4 bis E4, also Spalte E nach dem Kriterium: Größer oder gleich dem Datumseintrag in Zelle G2 und kleiner oder gleich dem Datumseintrag in Zelle G3.
CDbl wandelt explizit den Eintrag in eine Dezimalzahl. Excel arbeitet bei Datumsformaten mit Ganz- bzw Nachkommazahlen.
 
Public Sub Autofilter7()
  Range("A4:E4").Autofilter Field:=5, Criteria1:=">=" & CDbl(Range("G2")), Operator:=xlAnd, Criteria2:="<=" & CDbl(Range("G3"))
End Sub
 
 
Code8)
Öffnet alle gesetzten Filter im aktiven Tabellenblatt. Aber ACHTUNG - Code läuft in einen Fehler, wenn keine Spalte gefiltert ist.
 
Public Sub Autofilter8()
  ActiveSheet.ShowAllData
End Sub
 
 
Code9)
Code prüft, ob im aktiven Tabellenblatt ein Autofilter existiert, und ob mindestens eine Spalte gefiltert ist. Trifft dies zu, so werden alle Filter geöffnet. Somit wird eine etwaige Fehlermeldung wie bei Code Nr8 umgangen.
 
Public Sub Autofilter9()
  With ActiveSheet
    If .AutoFilterMode Then
      If .FilterMode Then .ShowAllData
    End If
  End With
End Sub
 
 
Code10)
Filtert die 4te Spalte im Bereich A4 bis E4, also Spalte D nach allen Textwerten.
( Es werden in diesem Beispiel natürlich alle Daten gelistet, da es nur Texte gibt )
 
Public Sub Autofilter10()
  Range("A4:E4").Autofilter Field:=4, Criteria1:="=***"
End Sub
 
 
Code11)
Filtert die 4te Spalte im Bereich A4 bis E4, also Spalte D nach allen Zahlenwerten.
( Es werden in diesem Beipiel natürlich keine Daten angezeigt, da es keine Zahlenwerte gibt )
 
Public Sub Autofilter11()
  Range("A4:E4").Autofilter Field:=4, Criteria1:="<>***"
End Sub