VBA Datum in Pivot filtern
Schritt-für-Schritt-Anleitung
Um das Datum in einer PivotTable mittels VBA zu filtern, kannst Du folgende Schritte befolgen:
- Öffne die Excel-Datei mit Deiner PivotTable.
- Öffne den VBA-Editor mit
ALT + F11.
- Füge ein neues Modul hinzu:
- Rechtsklick auf „VBAProject (DeineDatei.xlsm)“.
- Wähle „Einfügen“ > „Modul“.
- Kopiere den folgenden Code in das Modul:
Sub FilterDatumInPivot()
Dim Datum As Date
Dim sDatum As String
Datum = Range("F1").Value ' Das Datum aus Zelle F1 entnehmen
' Formatierung des Datums
sDatum = Format(Datum, "DD/MM/YYYY")
' PivotTable aktualisieren und Datum filtern
With ActiveSheet.PivotTables("PivotTable2")
.RefreshTable
.PivotFields("Datum").ClearAllFilters
.PivotFields("Datum").CurrentPage = sDatum
End With
End Sub
- Speichere das Modul und schließe den Editor.
- Führe das Makro aus: Gehe zurück zu Excel, drücke
ALT + F8, wähle FilterDatumInPivot und klicke auf „Ausführen“.
Häufige Fehler und Lösungen
-
Laufzeitfehler 1004: Dieser Fehler tritt häufig auf, wenn das angegebene Datum nicht im richtigen Format vorliegt. Stelle sicher, dass das Datum in F1 im Format TT.MM.JJJJ eingegeben ist.
-
PivotTable nicht gefunden: Überprüfe den Namen der PivotTable. Ersetze "PivotTable2" im Code durch den tatsächlichen Namen Deiner PivotTable.
Alternative Methoden
Falls Du kein VBA verwenden möchtest, kannst Du auch die Filteroptionen der PivotTable direkt in Excel nutzen:
- Klicke in die PivotTable.
- Gehe zu „Datum“ und klicke auf den Dropdown-Pfeil.
- Wähle „Datumsfilter“ und wähle die gewünschte Option aus.
Diese Methode ist vor allem nützlich, wenn Du kein Makro erstellen oder ausführen möchtest.
Praktische Beispiele
Angenommen, Du hast eine PivotTable mit Verkaufsdaten und möchtest die Verkaufszahlen für den 02.02.2018 filtern. Stelle sicher, dass:
- Das Datum in Zelle F1 steht.
- Deine PivotTable den Namen „PivotTable2“ trägt.
Führe dann das oben genannte Makro aus, um die PivotTable entsprechend zu filtern.
Tipps für Profis
-
Benutze das Makro-Rekorder: Wenn Du nicht sicher bist, wie Du den VBA-Code manuell schreiben sollst, kannst Du den Makro-Rekorder verwenden, um die Schritte aufzuzeichnen und den generierten Code anzupassen.
-
Fehlerbehandlung hinzufügen: Implementiere Fehlerbehandlung in Deinen VBA-Code, um sicherzustellen, dass der Code nicht abstürzt, falls etwas schiefgeht. Zum Beispiel:
On Error Resume Next
' Dein Code hier
On Error GoTo 0
FAQ: Häufige Fragen
1. Was ist der Unterschied zwischen einem Makro und einer normalen Excel-Formel?
Ein Makro ist ein automatisierter Satz von Anweisungen, der in VBA geschrieben ist, um komplexe Aufgaben auszuführen, während eine Formel eine einfache Berechnung in einer Zelle darstellt.
2. Wie kann ich sicherstellen, dass mein Datum korrekt formatiert ist?
Du kannst das Datum in Excel formatieren, indem Du mit der rechten Maustaste auf die Zelle klickst, „Zellen formatieren“ wählst und dann das gewünschte Datumsformat auswählst.