Vernieuw de draaitabel in VBA

We maken meestal een draaitabel wanneer we een soort plots of grafieken moeten maken of als we er wat analyse over moeten uitvoeren. Door de draaitabel op te stellen, kunnen we een algemeen beeld en idee krijgen van wat er eigenlijk in de gegevens zit. Dit is de beste manier om gegevens te vinden. En elke keer dat we wijzigingen in de gegevens aanbrengen, moeten we ook de draaitabel vernieuwen. Zodat ook de bijgewerkte datatelling wordt ingevuld. Het vernieuwen van een draaitabel is heel eenvoudig, maar wat als we tienen draaitabellen hebben in één Excel-bestand dat we moeten bijwerken. Dus in plaats van alle draaitabellen één voor één te vernieuwen, kunnen we alle draaitabellen in één keer direct vernieuwen met behulp van VBA Refresh Pivot Table.

Hoe de draaitabel vernieuwen te gebruiken in Excel VBA?

Hieronder staan ​​de verschillende voorbeelden om de draaitabel vernieuwen in Excel te gebruiken met behulp van VBA-code.

U kunt deze VBA-draaitabel Excel-sjabloon hier downloaden - VBA-draaitabel Excel-sjabloon vernieuwen

VBA-draaitabel vernieuwen - Voorbeeld # 1

Om de draaitabel te vernieuwen, moeten we eerst een draaitabel maken. Hieronder hebben we een regelitem met gegevens van 1000s waarmee we een draaitabel gaan maken.

In de bovenstaande schermafbeelding zien we de laatste regel op 1001 en deze gegevens bevatten klantinformatie voor de hoeveelheid die aan hen is verkocht.

Ga nu naar het menutabblad Invoegen en klik op de optie Draaitabel .

We krijgen een Create PivotTable box. Hier selecteert u eerst het bereik van de tabel dat we in een draaitabel willen opnemen. Selecteer vervolgens een willekeurige locatie in het huidige blad voor de draaitabel. We kunnen ook een nieuw werkblad kiezen.

Klik op OK als u klaar bent.

We zullen de draaitabel maken. Sleep nu de verplichte velden naar verschillende gebieden om de actuele draaitabel te krijgen. Hier slepen we Klantnaam naar RIJEN en Aantal naar KOLOMMEN zoals hieronder wordt getoond.

Hiermee is het maken van een draaitabel voltooid. Maar we moeten de draaitabel bijwerken nadat we iets in Gegevens hebben gewijzigd, dit kan eenvoudig worden gedaan door de optie Vernieuwen uit de rechtsklik-vervolgkeuzemenu-lijst zoals hieronder weergegeven.

Maar hetzelfde proces kan ook via VBA worden geautomatiseerd. Hiervoor hebben we een module nodig. Zo,

Stap 1: Ga naar het menutabblad Invoegen en selecteer de optie Module in de vervolgkeuzelijst zoals hieronder weergegeven.

Stap 2: Schrijf in de nieuw geopende module de subcategorie van VBA Pivot Refresh of we kunnen elke naam kiezen volgens onze keuze.

Code:

 Sub Pivot_Refresh2 () End Sub 

Stap 3: definieer eerst een variabele als PivotCache zoals hieronder getoond. PivotCache maakt gebruik van de Pivot-cache en niet van de gegevens die worden gebruikt voor het maken van de draaitabel.

Code:

 Sub Pivot_Refresh2 () Dim tabel als PivotCache End Sub 

Stap 4: Nu zullen we de For-Each Loop gebruiken. Dus open een For-Each-lus zoals hieronder weergegeven.

Code:

 Sub Pivot_Refresh2 () Dim tabel als PivotCache voor elke volgende tabel End Sub 

Stap 5: Nu in de For-End-lus, zullen we de toestand schrijven waarin we het momenteel geopende werkblad met een draaitabel met PivotCache zullen selecteren.

Code:

 Sub Pivot_Refresh2 () Dim tabel als PivotCache voor elke tabel in ThisWorkbook.PivotCaches Next Table End Sub 

Stap 6: Nu zullen we de opdracht Vernieuwen gebruiken om de gedefinieerde variabele tabel toe te wijzen.

Code:

 Sub Pivot_Refresh2 () Dim tabel als PivotCache voor elke tabel in ThisWorkbook.PivotCaches tabel. Vernieuw volgende tabel einde Sub 

Stap 7: Hiermee is de code voltooid, compileer nu de code naar de bestandsfout door op de functietoets F8 te drukken. Om te testen of de geschreven code niet werkt, hebben we de hoeveelheid Klant14 gewijzigd in 69 .

Stap 8: Voer nu de code uit. We zullen zien dat de totale telling tegen klant14 is bijgewerkt naar 2183, die is gemarkeerd in gele kleur.

VBA-draaitabel vernieuwen - voorbeeld # 2

Er is een andere manier om de draaitabel te vernieuwen via VBA. Voordat we verder gaan, kunnen we overwegen de naam van een draaitabel te wijzigen of we kunnen ook de standaardnaam gebruiken. Laten we proberen een nieuwe naam te geven aan de draaitabel. Selecteer hiervoor de draaitabel en ga naar de menutab Analyse zoals hieronder getoond.

In het eerste gedeelte van de draaitabelnaam zien we de standaardnaam als draaitabel1 .

Nu zullen we deze naam wijzigen. Overweeg om de nieuwe naam als klantgegevens te schrijven, zoals hieronder wordt weergegeven.

Stap 1: Open daarna een nieuwe module en schrijf de subcategorie van VBA Refresh zoals hieronder getoond.

Code:

 Sub Pivot_Refresh3 () End Sub 

Stap 2: definieer nu een variabele als draaitabel . Hier zullen we met de draaitabel rekening houden met de volledige brongegevens.

Code:

 Sub Pivot_Refresh3 () Dim tabel als draaitabel End Sub 

Stap 3: Gebruik nu Set met gedefinieerde variabele en selecteer het blad dat momenteel wordt geopend.

Code:

 Sub Pivot_Refresh3 () Dim tabel als draaitabel Tabel instellen = ActiveSheet. Einde Sub 

Stap 4: Selecteer de naam van de draaitabel die we willen vernieuwen, samen met het variabele gegevenstype dat we als draaitabel hebben gebruikt.

Code:

 Sub Pivot_Refresh3 () Dim tabel als draaitabel Set tabel = ActiveSheet.PivotTables ("Klantgegevens") End Sub 

Stap 5: Gebruik ten slotte de variabele met RefreshTable- functie om deze uit te voeren.

Code:

 Sub Pivot_Refresh3 () Dim tabel als draaitabel Set tabel = ActiveSheet.PivotTables ("Klantgegevens") Table.RefreshTable End Sub 

Stap 6: Laten we nog wat wijzigingen aanbrengen in de gegevens, om de echte visuals van toegepaste code te geven.

We hebben het aantal klanten2 gewijzigd in 56 . Als we de code nu uitvoeren in de draaitabel van Klantnaam, moeten er wijzigingen zijn in de som van de hoeveelheid voor Klant2 .

Stap 7: Ga nu naar het VBA-venster en compileer de code. Als er geen fout wordt gevonden, voert u deze uit door op de afspeelknop te klikken die zich onder de menubalk bevindt, zoals hieronder wordt weergegeven. We zullen opmerken dat een som van de verkochte hoeveelheid voor Klant2 nu omhoog gaat naar 1724 door de wijzigingen aan te brengen in de brontabel.

Hiermee kunnen we meer dan één brongegevens opnemen en een andere draaitabel maken. En het automatiseren van die draaitabellen is ook eenvoudig, omdat we alleen de naam en het blad van de draaitabel moeten opnemen waar de tabel zich bevindt.

Voordelen van VBA Refresh Pivot Table

  • Het kost minder tijd om de draaitabel te vernieuwen met VBA-code.
  • Het is heel eenvoudig te implementeren.

Dingen om te onthouden

  • We kunnen meerdere gegevensbronnen toevoegen en deze automatiseren met VBA-code.
  • Houd het VBA-venster en het Excel-blad parallel aan elkaar om de wijzigingen te zien gebeuren.
  • Het is beter om elke draaitabel een naam te geven als u meerdere gegevensbronnen en draaitabellen gebruikt en verwerkt.
  • Code met draaitabelnaam is gemakkelijk te begrijpen, te volgen en te lokaliseren.

Aanbevolen artikelen

Dit is een handleiding voor VBA Refresh Pivot Table. Hier bespreken we hoe u Excel VBA Refresh Pivot Table kunt gebruiken, samen met praktische voorbeelden en een downloadbare Excel-sjabloon. U kunt ook onze andere voorgestelde artikelen doornemen -

  1. VBA FileSystemObject (FSO)
  2. Substring Excel-functie
  3. VBA-snaarlengte
  4. Excel ISNUMBER Formula

Categorie: