Pivot-Filter über Zellinhalt steuern
Schritt-für-Schritt-Anleitung
Um einen Pivot-Filter über den Zellinhalt in Excel zu steuern, kannst du folgende Schritte ausführen:
-
Öffne dein Excel-Dokument und navigiere zum Blatt "AUSW", wo du die Zelle hast, die den Filter steuern soll.
-
Wechsel in den Visual Basic for Applications (VBA) Editor. Dies kannst du mit ALT + F11 tun.
-
Füge den folgenden Code ins Klassenmodul des Blattes "AUSW" ein:
Private Sub Worksheet_Change(ByVal Target As Range)
Call PivAendern
End Sub
-
Füge den folgenden Code in ein allgemeines Modul (z.B. "Modul1") ein:
Sub PivAendern()
With Sheets("PIVOT").PivotTables(1)
.PivotFields("Daten1").CurrentPage = Sheets("AUSW").[B1].Value
.PivotCache.Refresh
End With
End Sub
-
Schließe den VBA-Editor und kehre zu deinem Excel-Dokument zurück.
-
Teste die Funktionalität: Ändere den Wert in Zelle B1 auf dem Blatt "AUSW", um den Pivot-Filter zu setzen.
Häufige Fehler und Lösungen
-
Fehler: Der Pivot-Filter ändert sich nicht.
- Lösung: Stelle sicher, dass die Zelle, die du verknüpfen möchtest, den richtigen Wert enthält und dass die Pivot-Tabelle auf den richtigen Datenbereich zugreift.
-
Fehler: Alle Filterwerte werden nicht zurückgesetzt.
- Lösung: Um alle Filter zurückzusetzen, kannst du den folgenden Code in dein Modul einfügen:
Sub PivotZuruecksetzen()
Dim pf As PivotField
For Each pf In Sheets("PIVOT").PivotTables(1).PivotFields
pf.ClearAllFilters
Next pf
End Sub
Alternative Methoden
Eine weitere Möglichkeit, um den Pivot-Filter mit einer Zelle zu verknüpfen, ist die Verwendung von Excel-Formeln. Du kannst eine Hilfsspalte in deiner Datenquelle erstellen, die die Filterkriterien aus der Zelle ausliest. Diese Spalte kann dann in der Pivot-Tabelle verwendet werden.
Praktische Beispiele
Beispiel: Angenommen, du hast in der Zelle B1 auf dem Blatt "AUSW" den Wert "Verkauf". Du möchtest, dass die Pivot-Tabelle auf dem Blatt "PIVOT" nur die Daten für diesen bestimmten Verkaufswert anzeigt. Mit dem oben genannten VBA-Code wird dies automatisch aktualisiert, wenn du den Wert in B1 änderst.
Tipps für Profis
-
Verknüpfung von mehreren Zellen: Wenn du mehrere Zellen zur Filterung verwenden möchtest, kannst du die Werte in einer String-Variable zusammenfassen und den Filter entsprechend setzen.
-
Pivot-Tabelle erweitern: Du kannst die Pivot-Tabelle um weitere Filter erweitern, indem du zusätzliche PivotFields im With-Block hinzufügst.
-
Automatisierung: Überlege, ob du das automatische Zurücksetzen der Filterwerte programmieren möchtest, falls die Zelle gelöscht wird.
FAQ: Häufige Fragen
1. Wie kann ich einen Pivot-Filter aus einer Zelle auslesen?
Du kannst die Zelle direkt im VBA-Code referenzieren, wie im Schritt zur Implementierung des Codes gezeigt.
2. Was passiert, wenn ich die Zelle lösche?
Wenn die Zelle gelöscht wird, wird der Filter nicht automatisch zurückgesetzt, es sei denn, du implementierst den zusätzlichen Code zum Zurücksetzen der Filter.
3. Kann ich mehrere Pivot-Filter gleichzeitig setzen?
Ja, das ist möglich, indem du mehrere PivotFields in deinem VBA-Code ansprechen und aktualisieren kannst.