Pivottabellen via Makro bereinigen
20.05.2014 14:37:43
Hendrik
zu Office 2003-Zeiten habe ich mit diesem Code meine Pivottabellen um Leichen bereinigen können. Diese verbleiben ja in den Auswahl-Listen, auch wenn die Ausprägung in der Quellliste nicht mehr vorhanden ist.
For Each ws In ActiveWorkbook.Worksheets
wsZaehler = wsZaehler + 1
For Each pt In ws.PivotTables
ptZaehler = ptZaehler + 1
pt.RefreshTable
pt.ManualUpdate = True
For Each pf In pt.PivotFields
pfZaehler = pfZaehler + 1
For Each pi In pf.PivotItems
If pi.RecordCount = 0 And Not pi.IsCalculated Then
piZaehler = piZaehler + 1
pi.Delete
End If
Next
Next
pt.ManualUpdate = False
Next
Next
Wende ich den Code nun unter Office 2010 auf eine xlsx-Datei an, so bekomme ich bei pi.Delete einen "Anwendungs- oder objektdefinierten Fehler". Gibt es die Methode Delete nicht mehr für PivotItems? Wie kann ich mein Problem ansonsten lösen?Vielen Dank für Eure Hilfe und schöne Grüße!
Hendrik