Aktualisieren Sie die Pivot-Tabelle in VBA

Normalerweise erstellen wir eine Pivot-Tabelle, wenn wir eine Art von Plots oder Diagrammen erstellen oder eine Analyse darüber durchführen müssen. Wenn Sie die Pivot-Tabelle vorbereiten, erhalten Sie einen Überblick und eine Vorstellung davon, was sich tatsächlich in den Daten befindet. Dies ist der beste Weg, um an Daten heranzukommen. Und jedes Mal, wenn wir Änderungen an den Daten vornehmen, müssen wir auch die Pivot-Tabelle aktualisieren. Damit wird auch die aktualisierte Datenanzahl aufgefüllt. Das Aktualisieren einer Pivot-Tabelle ist sehr einfach, aber wenn wir 10 Pivot-Tabellen in einer einzigen Excel-Datei haben, die wir aktualisieren müssen. Anstatt alle Pivot-Tabellen einzeln zu aktualisieren, können Sie mit Hilfe von VBA Refresh Pivot Table alle Pivot-Tabellen direkt auf einmal aktualisieren.

Wie Verwenden von Pivot-Tabelle aktualisieren in Excel VBA?

Im Folgenden sind die verschiedenen Beispiele für die Verwendung der Option "Pivot-Tabelle aktualisieren" in Excel unter Verwendung von VBA-Code aufgeführt.

Sie können diese Excel-Vorlage für VBA-Pivot-Tabellenaktualisierung hier herunterladen - Excel-Vorlage für VBA-Pivot-Tabellenaktualisierung

VBA Refresh Pivot Table - Beispiel 1

Zum Aktualisieren der Pivot-Tabelle müssen Sie zunächst eine Pivot-Tabelle erstellen. Nachfolgend finden Sie die Daten der 1000er-Werbebuchung, anhand derer eine Pivot-Tabelle erstellt wird.

Im obigen Screenshot sehen wir die letzte Zeile bei 1001 und diese Daten enthalten Kundeninformationen zu der Menge, die an sie verkauft wurde.

Gehen Sie nun zur Menüregisterkarte Einfügen und klicken Sie auf die Option PivotTable .

Wir erhalten eine Create PivotTable Box. Wählen Sie dort zunächst den Tabellenbereich aus, den wir in eine Pivot-Tabelle aufnehmen möchten. Wählen Sie dann eine beliebige Stelle im aktuellen Blatt für die Pivot-Tabelle aus. Wir können auch Neues Arbeitsblatt auswählen.

Wenn Sie fertig sind, klicken Sie auf OK.

Wir werden die Pivot-Tabelle erstellen lassen. Ziehen Sie nun die erforderlichen Felder in verschiedene Bereiche, um die eigentliche Pivot-Tabelle zu erhalten. Hier ziehen wir den Kundennamen in ROWS und die Menge in COLUMNS, wie unten gezeigt.

Damit ist die Erstellung einer PivotTable abgeschlossen. Die Pivot-Tabelle muss jedoch aktualisiert werden, nachdem Daten geändert wurden. Dies kann durch einfaches Aktualisieren der Option in der Dropdown-Liste mit der rechten Maustaste erfolgen (siehe Abbildung unten).

Der gleiche Prozess kann jedoch auch über VBA automatisiert werden. Dafür bräuchten wir ein Modul. So,

Schritt 1: Gehen Sie zur Menüregisterkarte Einfügen und wählen Sie die Option Modul aus der Dropdown-Liste aus (siehe Abbildung unten).

Schritt 2: Schreiben Sie in das neu geöffnete Modul die Unterkategorie von VBA Pivot Refresh, oder wählen Sie einen beliebigen Namen aus.

Code:

 Sub Pivot_Refresh2 () End Sub 

Schritt 3: Definieren Sie zunächst eine Variable als PivotCache (siehe unten). PivotCache verwendet den Pivot-Cache und nicht die zum Erstellen der Pivot-Tabelle verwendeten Daten.

Code:

 Sub Pivot_Refresh2 () Dim-Tabelle als PivotCache-End-Sub 

Schritt 4: Jetzt verwenden wir die For-Each- Schleife. Öffnen Sie also eine For-Each-Schleife wie unten gezeigt.

Code:

 Sub Pivot_Refresh2 () Dim-Tabelle als PivotCache für jede nächste Tabelle End Sub 

Schritt 5: Jetzt schreiben wir in die For-End-Schleife die Bedingung, in der wir das aktuell geöffnete Arbeitsblatt auswählen, das eine Pivot-Tabelle mit PivotCache enthält .

Code:

 Sub Pivot_Refresh2 () Dim-Tabelle als PivotCache für jede Tabelle in ThisWorkbook.PivotCaches Next Table End Sub 

Schritt 6: Jetzt verwenden wir den Befehl Refresh und weisen ihm die definierte Variablentabelle zu.

Code:

 Sub Pivot_Refresh2 () Dim-Tabelle als PivotCache für jede Tabelle in ThisWorkbook.PivotCaches Table.Refresh Next Table End Sub 

Schritt 7: Dies vervollständigt den Code. Kompilieren Sie nun den Code, um einen Dateifehler zu erhalten, indem Sie die Funktionstaste F8 drücken. Um nun zu testen, ob der geschriebene Code nicht funktioniert, haben wir die Menge von Customer14 auf 69 geändert.

Schritt 8: Führen Sie nun den Code aus. Wir werden sehen, dass die Gesamtanzahl von Kunden14 auf 2183 aktualisiert wird, was in gelber Farbe hervorgehoben ist.

VBA Refresh Pivot Table - Beispiel 2

Es gibt eine andere Möglichkeit, die Pivot-Tabelle über VBA zu aktualisieren. Bevor wir fortfahren, können wir den Namen einer Pivot-Tabelle ändern oder auch den Standardnamen verwenden. Versuchen wir, der Pivot-Tabelle einen neuen Namen zu geben. Wählen Sie dazu die Pivot-Tabelle aus und gehen Sie wie unten gezeigt zur Registerkarte Analysieren .

Im ersten Abschnitt von PivotTable-Name wird der Standardname PivotTable1 angezeigt .

Jetzt werden wir diesen Namen ändern. Erwägen Sie, den neuen Namen wie unten gezeigt als Kundendaten zu schreiben.

Schritt 1: Öffnen Sie danach ein neues Modul und schreiben Sie die Unterkategorie von VBA-Aktualisierung wie unten gezeigt.

Code:

 Sub Pivot_Refresh3 () End Sub 

Schritt 2: Definieren Sie nun eine Variable als PivotTable . Bei der PivotTable werden hier die vollständigen Quelldaten berücksichtigt.

Code:

 Sub Pivot_Refresh3 () Dim Table As PivotTable End Sub 

Schritt 3: Verwenden Sie nun Set with defined variable und wählen Sie das aktuell geöffnete Blatt aus.

Code:

 Sub Pivot_Refresh3 () Dim Table As PivotTable Set Table = ActiveSheet. End Sub 

Schritt 4: Wählen Sie den Namen der Pivot-Tabelle aus, die zusammen mit dem variablen Datentyp, den wir als PivotTable verwendet haben, aktualisiert werden soll .

Code:

 Sub Pivot_Refresh3 () Dim Table As PivotTable Set Table = ActiveSheet.PivotTables ("Kundendaten") End Sub 

Schritt 5: Verwenden Sie zuletzt die Variable mit der Funktion RefreshTable, um sie auszuführen.

Code:

 Sub Pivot_Refresh3 () Dim-Tabelle als PivotTable Set-Tabelle = ActiveSheet.PivotTables ("Kundendaten") Table.RefreshTable End Sub 

Schritt 6: Nehmen wir noch einige Änderungen an den Daten vor, um den tatsächlichen Code zu visualisieren.

Wir haben die Anzahl der Kunden2 auf 56 geändert. Wenn wir nun den Code in der Pivot-Tabelle des Kundennamens ausführen, sollte sich die Summe der Mengen für Kunde2 ändern.

Schritt 7: Gehen Sie nun zum VBA-Fenster und kompilieren Sie den Code. Wenn kein Fehler gefunden wurde, führen Sie ihn aus, indem Sie auf die Wiedergabetaste unterhalb der Menüleiste klicken (siehe Abbildung unten). Wir werden feststellen, dass eine Menge, die für Kunde 2 verkauft wurde, nun bis 1724 reicht, indem die Änderungen in der Quellentabelle vorgenommen werden.

Auf diese Weise können wir mehrere Quelldaten einschließen und eine andere Pivot-Tabelle erstellen. Die Automatisierung dieser Pivot-Tabellen ist ebenfalls einfach, da wir nur den Pivot-Tabellennamen und das Blatt angeben müssen, auf dem sich die Tabelle befindet.

Vorteile von VBA Refresh Pivot Table

  • Das Aktualisieren der Pivot-Tabelle durch VBA-Code nimmt sehr viel weniger Zeit in Anspruch.
  • Es ist sehr einfach zu implementieren.

Dinge, an die man sich erinnern sollte

  • Wir können mehrere Datenquellentabellen hinzufügen und diese durch VBA-Code automatisieren.
  • Halten Sie das VBA-Fenster und die Excel-Tabelle parallel zueinander, um zu sehen, ob die Änderungen vorgenommen wurden.
  • Es ist besser, jede Pivot-Tabelle zu benennen, wenn Sie mehrere Datenquellen und Pivot-Tabellen verwalten.
  • Code mit Pivot-Tabellennamen ist leicht zu verstehen, zu verfolgen und zu lokalisieren.

Empfohlene Artikel

Dies ist eine Anleitung zur VBA-Pivot-Tabelle aktualisieren. Hier wird die Verwendung von Excel VBA Refresh Pivot Table zusammen mit praktischen Beispielen und einer herunterladbaren Excel-Vorlage erläutert. Sie können auch unsere anderen Artikelvorschläge durchgehen -

  1. VBA FileSystemObject (FSO)
  2. Teilzeichenfolge-Excel-Funktion
  3. VBA Länge der Zeichenfolge
  4. Excel ISNUMBER Formula

Kategorie: