Wie kann ich Kontrollkästchen elegant miteinander verknüpfen, um nach mehreren Kriterien zu filtern?
Hallo zusammen,
in einer ExcelDatei befinden sich Formularsteuerlemente bzw. 3 Kontrollkästchen mit denen ich verschiedene Kriterien nach Hunde, Katzen und Vögel filtern sowie verknüpfen möchte.
Mit ActiveX-Steuerelemente Kontrollstästchen und CommandButton konnte ich folgendes Beispiel aufbauen:
Private Sub ausführen_Click()
If CheckBox1.Value = True And CheckBox2.Value = False And CheckBox3.Value = False Then
Hund
ElseIf CheckBox1.Value = False And CheckBox2.Value = True And CheckBox3.Value = False Then
Katze
ElseIf CheckBox1.Value = False And CheckBox2.Value = False And CheckBox3.Value = True Then
Vogel
ElseIf CheckBox1.Value = True And CheckBox2.Value = True And CheckBox3.Value = False Then
HundKatze
ElseIf CheckBox1.Value = False And CheckBox2.Value = True And CheckBox3.Value = True Then
KatzeVogel
ElseIf CheckBox1.Value = True And CheckBox2.Value = False And CheckBox3.Value = True Then
HundVogel
ElseIf CheckBox1.Value = True And CheckBox2.Value = True And CheckBox3.Value = True Then
Alle
Else
MsgBox ("Es wurde nichts ausgewählt")
End If
End Sub
Sub Hund()
' Hund Makro
Worksheets("Tabelle2").Range("$A$4:$B$8").AutoFilter Field:=2, Criteria1:="Hund"
End Sub
Sub Katze()
' Katze Makro
Worksheets("Tabelle2").Range("$A$4:$B$8").AutoFilter Field:=2, Criteria1:="Katze"
End Sub
Sub Vogel()
' Vogel Makro
Worksheets("Tabelle2").Range("$A$4:$B$8").AutoFilter Field:=2, Criteria1:="Vogel"
End Sub
Sub Alle()
' Alle Makro
Worksheets("Tabelle2").Range("$A$4:$B$8").AutoFilter Field:=2
End Sub
Sub HundKatze()
' HundKatze Makro
ActiveSheet.Range("$A$6:$B$13").AutoFilter Field:=2, Criteria1:="=Hund", _
Operator:=xlOr, Criteria2:="=Katze"
End Sub
Sub KatzeVogel()
' KatzeVogel Makro
ActiveSheet.Range("$A$6:$B$13").AutoFilter Field:=2, Criteria1:="=Katze", _
Operator:=xlOr, Criteria2:="=Vogel"
End Sub
Sub HundVogel()
' HundVogel Makro
ActiveSheet.Range("$A$6:$B$13").AutoFilter Field:=2, Criteria1:="=Hund", _
Operator:=xlOr, Criteria2:="=Vogel"
End Sub
Das funktioniert soweit ganz gut.
Allerdings benötige ich Formularsteuerelemente Kontrollkästchen. Die Ergebnisse sollen sich schon während ein Kontrollkästchen betätigt wird aktualisieren. Aktuell läuft das über ActiveX-Steuerelemente Kontrollkästchen und CommandButton.
Gegenüberstellung der Varianten:
Nachgebaute Excel:
Bis auf die G4 funktioniert alles sehr gut. Vielleicht seht ihr den Fehler. Auf eine einfache Formel wie im Funktionstest reagiert die Zelle.
Vielen Dank für eure Hilfe. Liebe Grüße