Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Pivottabelle aktualisieren wenn externe Daten aktu

Pivottabelle aktualisieren wenn externe Daten aktu
Johannes
Hallo,
ich hab eine Excellmappe in der viele externe CVS's als externe Daten referenziert werden und beim Start automatisch aktualisiert werden. in der selben Mappe sind auch einige Pivottabellen, die beim Öffnen automatisch aktualisiert werden. Leider klappt das oftmals nicht. Gibt es ein Event das gefeuert wird, wenn die Aktualisierung der externen Daten beendet ist, sod. man dann mittels eines Makros die Pivottabellen aktualisiert?
Viele Grüße, Johannes E.
Anzeige
AW: Pivottabelle aktualisieren wenn externe Daten aktu
29.06.2009 12:42:23
Martin
Hallo Johannes,
ich arbeite zwar nicht mir Privottabellen, muss aber ebenfalls ständig CSV-Dateien importieren. Dazu habe ich mir per Makro eine Abrage geschrieben, die das Änderungsdatum der CSV-Dateien kontrolliert. Bei jedem CSV-Import schreibe ich in eine Zelle (bei mir B1) das Dateidatum der CSV-Datei:
Beispiel:
If Sheets("Zeiten").Range("B1") = FileDateTime("C:\Daten\Export.csv") Then
Application.StatusBar = "Kein neuer TransTracker-ZeitenExport verfügbar!"
Application.OnTime Now + TimeValue("00:00:05"), "Reset_Statusbar"
'MsgBox "Kein neuer Import verfügbar!", vbExclamation, "TT-Export erfolgt ?"
Exit Sub
End If
Die Abfrage könnte entweder über ein normales Worksheet-Ereignis wie Worksheet_SelectionChange ausgelöst werden oder über eine fest definierte Application.OnTime-Anweisung. Sicherlich gibt es auch eine Anweisung, dass die Privottabelle aktualisiert werden soll. Dazu steht mit Sicherheit etwas im Archiv.
Viele Grüße
Martin
Anzeige
AW: Pivottabelle aktualisieren wenn externe Daten aktu
29.06.2009 15:07:14
Johannes
Hallo Martin,
gibt es denn ein dediziertes Ereignis das ausgelöst wird, wenn das Aktualisieren abgeschlossen ist?
AW: Pivottabelle aktualisieren wenn externe Daten aktu
29.06.2009 22:18:23
Jürgen
Hallo Johannes,
wenn Du die Aktualisierung der Abfragen per VBA auslöst, also die Refresh-Methode aufrufst, solltest Du deren Parameter "BackgroundQuery" auf "False" setzen. Somit wird der VBA-Code erst fortgesetzt, wenn die Aktualisierung abgeschlossen ist. Wenn Du die automatische Aktualisierung über die Datenbereichseigenschaften aktiviert hast, gibt es dort die Option "Aktualisierung im Hintergrund zulassen", die Du deaktivieren solltest.
Herzlichen Gruß
Jürgen
Anzeige
AW: Pivottabelle aktualisieren wenn externe Daten aktu
30.06.2009 09:31:00
Jürgen
Hallo Johannes,
je nach Datenquelle sehen die Datenbereichseigenschaften anders aus - es war mir entgangen, dass beim Import von Text-Dateien diese Option im Dialog nicht zur Verfügung steht. Dann bliebe noch der Weg über VBA, d.h. die Aktualisierung nicht per Option in den Datenbereichseigenschaften anstoßen, sondern beim Öffnen der Datei ein entsprechendes Makro laufen zu lassen, das erst die Abfragen, dann die Pivottabellen aktualisiert, z.B. so:

Private Sub Workbook_Open()
Dim Abfrage As QueryTable
Dim PivotTabelle As PivotTable
Dim BlattNr As Integer
'Alle Abfragen aktualisieren
For BlattNr = 1 To ThisWorkbook.Sheets.Count
For Each Abfrage In Sheets(BlattNr).QueryTables
Abfrage.Refresh False
Next
Next
'Alle Pivot-Tabellen aktualisieren
For BlattNr = 1 To ThisWorkbook.Sheets.Count
For Each PivotTabelle In Sheets(BlattNr).PivotTables
PivotTabelle.RefreshTable
Next
Next
End Sub


Herzlichen Gruß
Jürgen

Anzeige
AW: Pivottabelle aktualisieren wenn externe Daten aktu
30.06.2009 10:20:25
Johannes
Hallo Jürgen,
ich habe es jetzt so gemacht, dass ich QueryTable.BackgroundQuery = False programmatisch setzte.
Vielen Dank für deine Hilfe, Johannes
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Pivottabelle automatisch aktualisieren bei externen Daten


Schritt-für-Schritt-Anleitung

Um die Excel Pivottabelle automatisch zu aktualisieren, wenn du externe Daten verwendest, kannst du die folgenden Schritte befolgen:

  1. Datenverbindung einrichten:

    • Stelle sicher, dass deine externen Datenquellen (z.B. CSV-Dateien) korrekt in Excel eingebunden sind. Gehe dazu zu Daten > Abrufen und Transformieren > Daten abrufen.
  2. Pivottabelle erstellen:

    • Markiere die Daten, die du analysieren möchtest, und gehe zu Einfügen > Pivottabelle. Wähle die Optionen zur Platzierung deiner Pivottabelle.
  3. Makro für automatische Aktualisierung erstellen:

    • Öffne den VBA-Editor mit Alt + F11 und füge das folgende Makro in das DieseArbeitsmappe-Modul ein:
    Private Sub Workbook_Open()
       Dim Abfrage As QueryTable
       Dim PivotTabelle As PivotTable
       Dim BlattNr As Integer
    
       'Alle Abfragen aktualisieren
       For BlattNr = 1 To ThisWorkbook.Sheets.Count
           For Each Abfrage In Sheets(BlattNr).QueryTables
               Abfrage.Refresh False
           Next
       Next
    
       'Alle Pivot-Tabellen aktualisieren
       For BlattNr = 1 To ThisWorkbook.Sheets.Count
           For Each PivotTabelle In Sheets(BlattNr).PivotTables
               PivotTabelle.RefreshTable
           Next
       Next
    End Sub
  4. Hintergrundaktualisierung deaktivieren:

    • Stelle sicher, dass die BackgroundQuery-Eigenschaft auf False gesetzt ist. Das kannst du programmatisch tun, um sicherzustellen, dass deine Pivottabellen erst aktualisiert werden, wenn die Abfragen vollständig sind.

Häufige Fehler und Lösungen

  • Pivottabelle aktualisiert sich nicht:

    • Überprüfe, ob die Datenquelle korrekt verknüpft ist und ob die Abfrage vor der Aktualisierung der Pivottabelle erfolgreich abgeschlossen wurde.
  • Pivot automatisch aktualisieren funktioniert nicht:

    • Stelle sicher, dass die Option „Aktualisierung im Hintergrund zulassen“ deaktiviert ist, um sicherzustellen, dass die Pivottabelle nach der Aktualisierung der Daten sofort aktualisiert wird.
  • Pivottabelle aktualisiert nicht bei Änderungen:

    • Überprüfe deine Makroeinstellungen und stelle sicher, dass das Makro beim Öffnen der Datei ausgeführt wird.

Alternative Methoden

  1. Verwendung der Excel-Funktion „Aktualisieren“:

    • Du kannst die Pivottabelle manuell aktualisieren, indem du mit der rechten Maustaste auf die Pivottabelle klickst und „Aktualisieren“ wählst.
  2. Automatische Aktualisierung bei Änderungen:

    • Nutze das Worksheet-Event Worksheet_Change, um die Pivottabelle automatisch zu aktualisieren, wenn sich Daten in einem bestimmten Bereich ändern.

Praktische Beispiele

  • Beispiel 1: Automatische Aktualisierung beim Öffnen der Datei

    • Verwende das oben beschriebene Makro, um alle Pivottabellen und Abfragen beim Öffnen der Excel-Datei automatisch zu aktualisieren.
  • Beispiel 2: Aktualisieren einer Pivottabelle bei Datenänderung

    • Füge den folgenden Code in das Arbeitsblattmodul ein, um die Pivottabelle zu aktualisieren, wenn eine Zelle geändert wird:
    Private Sub Worksheet_Change(ByVal Target As Range)
       If Not Intersect(Target, Me.Range("A1:A10")) Is Nothing Then
           Me.PivotTables("PivotTabelle1").RefreshTable
       End If
    End Sub

Tipps für Profis

  • Alle Pivot-Tabellen aktualisieren: Verwende das Makro, um alle Pivottabellen in der Arbeitsmappe zu aktualisieren, anstatt sie einzeln zu aktualisieren.

  • Verwende VBA für spezifische Anforderungen: Mit VBA kannst du maßgeschneiderte Lösungen für die Aktualisierung deiner Pivottabellen erstellen, die auf deine spezifischen Datenquellen abgestimmt sind.

  • Überprüfe regelmäßig deine Datenquellen: Stelle sicher, dass alle externen Datenquellen und deren Verknüpfungen regelmäßig überprüft und aktualisiert werden, um Probleme zu vermeiden.


FAQ: Häufige Fragen

1. Wie kann ich meine Pivottabelle aktualisieren, wenn sich die Daten geändert haben? Du kannst VBA verwenden, um die Pivottabelle automatisch zu aktualisieren, indem du das Worksheet_Change-Ereignis nutzt.

2. Funktioniert die automatische Aktualisierung ohne Makros? Die automatische Aktualisierung kann nur teilweise ohne Makros umgesetzt werden. Du kannst die Pivottabelle manuell aktualisieren, jedoch nicht automatisch bei Änderungen in den Datenquellen.

3. Was tun, wenn die Pivottabelle nicht aktualisiert wird? Überprüfe die Datenverbindung, die Einstellungen zur Hintergrundaktualisierung und stelle sicher, dass das entsprechende Makro korrekt ausgeführt wird.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige