Aktualisieren aller Pivot-Tabellen in meiner Excel-Arbeitsmappe mit einem Makro

Ich habe eine Arbeitsmappe mit 20 verschiedenen Pivot-Tabellen. Gibt es eine einfache Möglichkeit, alle Pivot-Tabellen zu finden und sie in VBA zu aktualisieren?

Lösung

Ja.

ThisWorkbook.RefreshAll

Oder, wenn Ihre Excel-Version alt genug ist,

Dim Sheet as WorkSheet, Pivot as PivotTable
For Each Sheet in ThisWorkbook.WorkSheets
    For Each Pivot in Sheet.PivotTables
        Pivot.RefreshTable
        Pivot.Update
    Next
Next
Kommentare (7)

Mit diesem VBA-Code werden alle Pivot-Tabellen/Diagramme in der Arbeitsmappe aktualisiert.

Sub RefreshAllPivotTables()

Dim PT As PivotTable
Dim WS As Worksheet

    For Each WS In ThisWorkbook.Worksheets

        For Each PT In WS.PivotTables
          PT.RefreshTable
        Next PT

    Next WS

End Sub

Eine weitere nicht-programmatische Option ist:

  • Rechtsklick auf jede Pivot-Tabelle
  • Wählen Sie Tabellenoptionen
  • Markieren Sie die Option 'Beim Öffnen aktualisieren'.
  • Klicken Sie auf die Schaltfläche OK

Dadurch wird die Pivot-Tabelle jedes Mal aktualisiert, wenn die Arbeitsmappe geöffnet wird.

Kommentare (0)

Sie haben eine PivotTables-Sammlung auf einem VB Worksheet-Objekt. Eine schnelle Schleife wie diese wird also funktionieren:

Sub RefreshPivotTables()
    Dim pivotTable As PivotTable
    For Each pivotTable In ActiveSheet.PivotTables
        pivotTable.RefreshTable
    Next
End Sub

Notizen aus den Schützengräben:

  1. Denken Sie daran, den Schutz geschützter Blätter aufzuheben, bevor Sie die PivotTable aktualisieren.
  2. Speichern Sie oft.
  3. Ich werde mir mehr einfallen lassen und zu gegebener Zeit aktualisieren... :)

Viel Glück!

Kommentare (0)