Pivot-Filter auf aktuelles Datum festlegen in Excel
Schritt-für-Schritt-Anleitung
Um einen Pivot-Filter auf das aktuelle Datum in Excel festzulegen, kannst Du den folgenden VBA-Code verwenden. Dieser Code funktioniert in Excel-Versionen ab 2013, insbesondere in Excel 2016:
Sub SetPivotFilterToCurrentDate()
Dim pvTab As PivotTable
Dim pvField As PivotField
Dim pvItem As PivotItem
Application.EnableEvents = False
Application.ScreenUpdating = False
Set pvTab = ActiveSheet.PivotTables("PivotTable1")
Set pvField = pvTab.PageFields("Datum")
pvField.EnableMultiplePageItems = True
pvField.ClearAllFilters
For Each pvItem In pvField.PivotItems
If IsDate(pvItem.Name) Then
If CDate(pvItem.Name) < Date Then
pvItem.Visible = False
End If
End If
Next pvItem
' Unsichtbare "(blank)"-Items entfernen
For Each pvItem In pvField.PivotItems
If pvItem = "(blank)" Then
pvItem.Visible = False
End If
Next pvItem
Application.EnableEvents = True
Application.ScreenUpdating = True
End Sub
Dieser Code filtert alle Datumswerte, die vor dem heutigen Datum liegen, aus der Pivot-Tabelle heraus.
Häufige Fehler und Lösungen
-
Fehlermeldung: "Visible-Eigenschaft kann nicht festgelegt werden"
- Dieser Fehler tritt auf, wenn alle Items in der Pivot-Tabelle unsichtbar gemacht werden. Stelle sicher, dass mindestens ein Item (z.B. das heutige Datum) sichtbar bleibt.
-
Datumsformat-Probleme
- Wenn Du unterschiedliche Datumsformate in Deiner Liste hast (z.B.
mm.dd.yyyy und dd.mm.yyyy), kann dies zu Problemen führen. Überprüfe, ob alle Datumsangaben einheitlich formatiert sind. Du kannst den Code anpassen, um die Formate zu konvertieren.
Alternative Methoden
Wenn Du keine VBA-Lösungen verwenden möchtest, kannst Du auch die Filterfunktionen direkt in Excel nutzen:
- Wähle die Pivot-Tabelle aus.
- Klicke auf den Dropdown-Pfeil im Datumsfeld.
- Wähle "Datumsfilter" und dann "Heute" aus.
Diese Methode ist jedoch weniger flexibel als die VBA-Lösung.
Praktische Beispiele
Angenommen, Du hast eine Pivot-Tabelle mit Verkaufsdaten und möchtest nur die Daten ab dem heutigen Datum anzeigen:
- Füge den oben genannten VBA-Code in ein Modul in Deiner Arbeitsmappe ein.
- Stelle sicher, dass das Datumsfeld korrekt benannt ist.
- Führe das Makro aus, um die Filter anzuwenden.
Das Ergebnis ist eine Pivot-Tabelle, die nur die zukünftigen Verkaufsdaten anzeigt.
Tipps für Profis
- VBA-Fehlerbehebung: Nutze
Debug.Print innerhalb des Codes, um zu sehen, welche Werte in der Schleife durchlaufen werden. So kannst Du den Fehler schneller identifizieren.
- Datumsformatierung: Stelle sicher, dass alle Datumswerte in Deiner Datenquelle einheitlich sind. Erwäge die Verwendung von Datumsformatierungen in Excel, um dies zu gewährleisten.
- Regelmäßige Updates: Wenn Du regelmäßig mit Pivot-Tabellen arbeitest, erwäge, das Makro einer Schaltfläche zuzuweisen, um den Filter schnell anzuwenden.
FAQ: Häufige Fragen
1. Warum funktioniert der Code nicht in Excel 2010?
Der Code nutzt Funktionen, die in Excel 2010 nicht unterstützt werden. Daher ist es ratsam, auf eine neuere Version wie Excel 2013 oder 2016 umzusteigen.
2. Wie kann ich das Datumsformat in Excel ändern?
Du kannst das Datumsformat über die Zellenformatierung ändern. Wähle die Zellen aus, gehe zu "Start" > "Zahlenformat" und wähle das gewünschte Datumsformat aus.
3. Gibt es eine Möglichkeit, die Filter bei Bedarf zurückzusetzen?
Ja, Du kannst eine zusätzliche Schaltfläche oder ein Makro erstellen, das alle Filter in der Pivot-Tabelle zurücksetzt, indem Du pvField.ClearAllFilters aufrufst.