Autofilter automatisch aktualisieren in Excel
Schritt-für-Schritt-Anleitung
Um den Autofilter auf einem anderen Tabellenblatt automatisch zu aktualisieren, wenn sich die Werte in "Tabelle1" ändern, kannst du das Worksheet_Change
-Ereignis verwenden. Hier ist eine Schritt-für-Schritt-Anleitung:
-
Öffne die Excel-Datei und gehe zu "Tabelle1".
-
Öffne den VBA-Editor mit ALT + F11
.
-
Doppelklicke auf "Tabelle1" im Projekt-Explorer.
-
Füge folgenden Code in das Modul ein:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim wksF As Worksheet
Set wksF = ActiveWorkbook.Worksheets("Tabelle2")
Select Case Target.Address(False, False, xlA1)
Case "A1", "B1", "C1"
' Auto filter in Tabelle2 aktualisieren
With wksF
If .FilterMode = True Then .ShowAllData
With .AutoFilter.Range
If IsEmpty(Me.Range("A1")) Then
.AutoFilter Field:=1
Else
.AutoFilter Field:=1, Criteria1:=Me.Range("A1").Value
End If
If IsEmpty(Me.Range("B1")) Then
.AutoFilter Field:=2
Else
.AutoFilter Field:=2, Criteria1:=Me.Range("B1").Value
End If
If IsEmpty(Me.Range("C1")) Then
.AutoFilter Field:=3
Else
.AutoFilter Field:=3, Criteria1:=Me.Range("C1").Value
End If
End With
End With
Case Else
End Select
End Sub
-
Schließe den VBA-Editor und teste die Funktion, indem du Werte in A1, B1 oder C1 in "Tabelle1" änderst.
Häufige Fehler und Lösungen
Alternative Methoden
Falls du eine andere Methode ausprobieren möchtest, kannst du auch das Worksheet_SelectionChange
-Ereignis verwenden. Hier ein Beispiel:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, Me.Range("A1:C1")) Is Nothing Then
ActiveSheet.AutoFilter.ApplyFilter
End If
End Sub
Diese Methode aktualisiert den Filter in "Tabelle2" jedes Mal, wenn du eine Zelle in "Tabelle1" auswählst.
Praktische Beispiele
Hier sind einige praktische Beispiele zur Verwendung des Autofilters:
-
Beispiel 1: Wenn der Wert in A1 auf „Äpfel“ geändert wird, wird nur der Datensatz angezeigt, der Äpfel entspricht.
-
Beispiel 2: Wenn die Zelle B1 leer ist, bleibt der Filter in der zweiten Spalte unverändert, sodass alle Werte angezeigt werden.
Tipps für Profis
- Verwende Tastenkombinationen wie
ALT + D + F + F
, um den Autofilter schnell zu aktivieren oder zu deaktivieren.
- Nutze das
activesheet.autofilter
-Objekt, um den aktuellen Filterstatus zu überprüfen, bevor du Änderungen vornimmst.
- Stelle sicher, dass deine Daten immer in einer Tabelle/ListObject organisiert sind, um die Filterfunktionen optimal zu nutzen.
FAQ: Häufige Fragen
1. Wie kann ich den Autofilter in einer Tabelle automatisch aktualisieren?
Du kannst das Worksheet_Change
-Ereignis verwenden, um den Autofilter automatisch zu aktualisieren, wenn sich die Zellen ändern.
2. Gibt es eine Tastenkombination, um den Filter zu aktualisieren?
Ja, du kannst ALT + D + F + F
verwenden, um den Filter in Excel zu aktualisieren.
3. Wie kann ich den Autofilter für mehrere Spalten einstellen?
Du kannst mehrere If
-Bedingungen im Worksheet_Change
-Ereignis verwenden, um die Filter für jede relevante Spalte einzustellen.