AW: pivot automatisch aktualisieren
06.07.2010 23:49:07
fcs
Hallo Mike,
im Prinzip kein Problem. Jedoch sollten dann die 2 Sekunden auch ausreichen, dass sich die Datenquelle des Pivotberichtes aktualisieren kann.
Mit der OnTime-Methode kann man ein entsprechendes Makro im gewünschten Rhymus starten.
Die Aktualiserung kann mit den Workbook-Makros automatisch beim Öffenen/Schließen gestartet/beendet werden. Zusätzlich besteht die Möglichkeit, jederzeit die Aktualisierung manuell zu Starten/Stoppen.
Gruß
Franz
'### Modul: DieseArbeitsmappe
Option Explicit
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Call TimerStop
End Sub
Private Sub Workbook_Open()
Call TimerStart
End Sub
'### Modul: Allgemeines Modul ###
Option Explicit
Public NextTime As Date
Sub TimerStart()
If NextTime = 0 Then
Call PivotUpdate
Else
MsgBox "Die automatische Pivot-Aktualisierung läuft schon!"
End If
End Sub
Sub TimerStop()
On Error Resume Next
Application.OnTime earliesttime:=NextTime, Procedure:="PivotUpdate", Schedule:=False
NextTime = 0
End Sub
Sub PivotUpdate()
Dim wks As Worksheet, pvTable As PivotTable
Set wks = ThisWorkbook.Worksheets("Tabelle2") 'ggf. anpassen!!
Set pvTable = wks.PivotTables(1) 'ggf. anpassen
pvTable.RefreshTable
NextTime = Now + TimeSerial(Hour:=0, Minute:=0, Second:=2)
Application.OnTime earliesttime:=NextTime, Procedure:="PivotUpdate"
End Sub