VBA alle Pivottabellen bei Dateistart aktualisieren
#1
Hey Leute,

hat jemand den Code für die workbook_open Methode, mit der alle Pivottabellen in der Arbeitsmappe beim Start der Datei aktualisiert werden?


VG

Code:
Private Sub Workbook_Open()
Dim wks As Worksheet
Dim pt As PivotTable
     
For Each wks In Worksheets
   For Each pt In wks.PivotTables
       pt.RefreshTable
   Next pt
Next wks

End Sub

Das sollte eigentlich funktionieren?

So einfach war es wohl nicht. Er steigt bei  pt.RefreshTable aus und sagt, dass er das Objekt nicht finden konnte. 

Nicht jedes Arbeitsblatt besitzt auch eine Pivottabelle und viele Blätter mit Pivottabelle sind ausgeblendet (sollen aber trotzdem aktualisiert werden). 

Hat Jemand eine Lösung?
Antworten Top
#2
hALLÖCHEN;

Mit wks.Pivottables.Count könntest Du prüfen, ob auf dem Blatt welche sind und nur in dem Fall auch refreshen.
Wenn ein Refresh auf ausgeblendeten Blättern nicht geht, kannst Du diese einblenden und anschließend wieder ausblenden. Du könntest den "Blend"-Status eines Blattes in eine Variable packen, das Blatt einblenden und am Ende den "Blend"-Status wiederherstellen.
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste