Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
976to980
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
976to980
976to980
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Pivot Cache verkleinern - Code ändern

Pivot Cache verkleinern - Code ändern
09.05.2008 14:04:00
Lutz
Hallo Excel-Profis,
ich habe einen Code der für alle Pivottabellen den Pivotcache verkleinert:

Sub DeleteOldPivotItemsWS()
Dim ws              As Worksheet
Dim pt              As PivotTable
Dim pf              As PivotField
Dim pi              As PivotItem
On Error Resume Next
For Each pt In ActiveSheet.PivotTables
pt.RefreshTable
For Each pf In pt.PivotFields
For Each pi In pf.PivotItems
If pi.RecordCount = 0 And _
Not pi.IsCalculated Then
pi.Delete
End If
Next
Next
Next
End Sub


Ich möchte das aber jetzt für einzelne Pivots im aktuellen Blatt machen, z.B. erst für Pivottable 1, dann für 2 und dann für Nummer 3.
Wie muß man den Code ändern?
Gruß Lutz

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Pivot Cache verkleinern - Code ändern
09.05.2008 14:52:00
fcs
Hallo Lutz,
definiere ein Array mit den Namen bzw. Nummern der Pivottabs und arbeite die in einer Schleife ab.
Gruß
Franz

Sub DeleteOldPivotItemsWS()
Dim ws              As Worksheet
Dim pt              As PivotTable
Dim pf              As PivotField
Dim pi              As PivotItem
Dim arrPT           As Variant
Dim intI            As Integer
On Error Resume Next
arrPT = Array(1, 2, 4) 'oder auch die Namen der Pivottabellen in Anführungszeichen
'arrPT = Array("Pivottabelle 1", "Pivottabelle 1", "Pivottabelle 1")
For intI = LBound(arrPT) To UBound(arrPT)
Set pt = ActiveSheet.PivotTables(arrPT(intI))
pt.RefreshTable
For Each pf In pt.PivotFields
For Each pi In pf.PivotItems
If pi.RecordCount = 0 And _
Not pi.IsCalculated Then
pi.Delete
End If
Next
Next
Next
End Sub


Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige