Opdater pivottabel i VBA

Vi opretter normalt en pivottabel, når vi er nødt til at oprette en slags plot eller diagrammer, eller vi er nødt til at udføre en analyse over det. Ved at forberede Pivot-tabellen kan vi få den overordnede opfattelse og idé om, hvad der faktisk er inde i dataene. Dette er den bedste måde at finde en måde at komme ind på data på. Og hver gang vi foretager ændringer i dataene, er vi nødt til at opdatere pivottabellen også. Så det også indeholder den opdaterede datatælling. Det er meget let at opdatere en pivottabel, men hvad nu hvis vi har 10s pivottabeller i en enkelt Excel-fil, som vi har brug for at opdatere. Så i stedet for at opdatere alle pivottabellerne en efter en, kan vi direkte opdatere alle pivottabellerne på én gang ved hjælp af VBA Refresh Pivot Table.

Sådan bruges Refresh Pivot Table i Excel VBA?

Nedenfor er de forskellige eksempler, der skal bruges Opdater pivottabel i Excel ved hjælp af VBA-kode.

Du kan downloade denne VBA Refresh Pivot Table Excel-skabelon her - VBA Refresh Pivot Table Excel Template

VBA Refresh Pivot Table - Eksempel # 1

For at opdatere pivottabellen skal vi først oprette en pivottabel. Nedenfor har vi en data på 1000-tallet linjepost, hvormed vi opretter en pivottabel.

I ovenstående skærmbillede kan vi se den sidste linje på 1001, og disse data har kundeoplysninger mod den solgte mængde til dem.

Gå nu til fanen Indsæt menu, og klik på indstillingen PivotTable .

Vi får en Create PivotTable-boks. Derfra skal du først vælge det interval af tabel, som vi vil inkludere i en pivottabel. Vælg derefter ethvert sted i det aktuelle ark til Pivot-tabellen. Vi kan også vælge nyt regneark.

Når det er gjort, skal du klikke på Ok.

Vi får pivottabellen oprettet. Træk nu de krævede felter til forskellige områder for at få den aktuelle pivottabel. Her trækker vi kundenavn til ROWS og antal i COLUMNS som vist nedenfor.

Dette afslutter oprettelsen af ​​en PivotTable. Men vi er nødt til at opdatere pivottabellen efter at have ændret noget i Data, dette kunne gøres ved blot at opdatere indstillingen fra rullemenuen til højreklik som vist nedenfor.

Men den samme proces kan også automatiseres gennem VBA. Til dette har vi brug for et modul. Så,

Trin 1: Gå til Indsæt menufanen, og vælg Modulindstilling på rullelisten som vist nedenfor.

Trin 2: Skriv det underkategori af VBA Pivot Refresh i det nyåbnede modul, eller vi kan vælge ethvert navn efter vores valg.

Kode:

 Sub Pivot_Refresh2 () End Sub 

Trin 3: Definér først en variabel som PivotCache som vist nedenfor. PivotCache bruger Pivot-cachen, ikke de data, der bruges til at oprette Pivot-tabellen.

Kode:

 Sub Pivot_Refresh2 () Dim-tabel som PivotCache End Sub 

Trin 4: Nu bruger vi For- Loop. Åbn så en For-hver-sløjfe som vist nedenfor.

Kode:

 Sub Pivot_Refresh2 () Dim-tabel som PivotCache for hver næste tabel-slut-sub 

Trin 5: Nu inde i For-End-loopen skriver vi betingelsen, hvor vi vælger det aktuelt åbne regneark, der har en Pivot-tabel med PivotCache .

Kode:

 Sub Pivot_Refresh2 () Dim-tabel som PivotCache for hver tabel i denneWorkbook.PivotCache Next Table End Sub 

Trin 6: Nu vil vi bruge Opdater kommando tildele den den definerede variabel Tabel .

Kode:

 Sub Pivot_Refresh2 () Dim-tabel som PivotCache for hver tabel i denneWorkbook.PivotCaches-tabel. Opdater næste tabel-slut-sub 

Trin 7: Dette afslutter koden, kompiler nu koden til filfejl ved at trykke på F8-funktionstasten. Nu for at teste, om den skriftlige kode fungerer ikke, har vi ændret kundemængden til 69 .

Trin 8: Kør nu koden. Vi vil se, at det samlede antal mod kunder14 er opdateret til 2183, hvilket er fremhævet i gul farve.

VBA Refresh Pivot Table - Eksempel # 2

Der er en anden måde at opdatere pivottabellen gennem VBA. Inden vi går videre, kan vi overveje at ændre navnet på en pivottabel, eller vi kan også bruge standardnavnet. Lad os prøve at give et nyt navn til Pivot-tabellen. For dette skal du vælge pivottabellen og gå til fanen Analysér som vist nedenfor.

I det første afsnit af PivotTable Name kan vi se standardnavnet som PivotTable1 .

Nu ændrer vi dette navn. Overvej at skrive det nye navn som kundedata som vist nedenfor.

Trin 1: Åbn derefter et nyt modul og skriv underkategorien VBA Refresh som vist nedenfor.

Kode:

 Sub Pivot_Refresh3 () End Sub 

Trin 2: Definer nu en variabel som PivotTable . Her med PivotTable vil vi overveje de komplette kildedata.

Kode:

 Sub Pivot_Refresh3 () Dim Table As PivotTable End Sub 

Trin 3: Brug nu Set med en defineret variabel, og vælg det ark, der aktuelt åbnes.

Kode:

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

Trin 4: Vælg navnet på Pivot-tabellen, som vi vil opdatere sammen med den variabel datatype, vi har brugt som PivotTable .

Kode:

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

Trin 5: Brug til sidst variablen med RefreshTable- funktionen til at udføre den.

Kode:

 Sub Pivot_Refresh3 () Dim Table As PivotTable Set Table = ActiveSheet.PivotTables ("Customer Data") Table.RefreshTable End Sub 

Trin 6: Lad os foretage nogle flere ændringer i dataene for at give det rigtige billede af anvendt kode.

Vi har ændret antallet af kunde2 som 56 . Hvis vi nu kører koden i pivottabellen med kundenavn, skulle der være ændringer i summen af ​​mængde for kunde2 .

Trin 7: Gå nu til VBA-vinduet og kompilér koden. Hvis der ikke findes nogen fejl, skal du køre den ved at klikke på afspilningsknappen, der er under menulinjen som vist nedenfor. Vi vil bemærke, at en sum af den solgte mængde for Customer2 nu går op til 1724 ved at foretage ændringerne i kildetabellen.

På dette punkt kan vi inkludere mere end en kildedata og oprette en anden pivottabel. Og at automatisere disse pivottabeller er også let, da vi bare har brug for at inkludere pivottabellens navn og ark, hvor tabellen ligger.

Fordele ved VBA Refresh Pivot Table

  • Det tager meget mindre tid at opdatere pivottabellen med VBA-kode.
  • Det er meget let at implementere.

Ting at huske

  • Vi kan tilføje flere datakilder og automatisere dem efter VBA-kode.
  • For at se ændringerne sket skal du holde VBA-vinduet og Excel-ark parallelt med hinanden.
  • Det er bedre at navngive hver enkelt pivottabel, hvis du håndterer og håndterer flere datakilder og pivottabeller.
  • Kode med pivottabelnavn er let at forstå, spore og lokalisere.

Anbefalede artikler

Dette er en guide til VBA Refresh Pivot Table. Her diskuterer vi, hvordan du bruger Excel VBA Refresh Pivot Table sammen med praktiske eksempler og downloadbar excel-skabelon. Du kan også gennemgå vores andre foreslåede artikler -

  1. VBA FileSystemObject (FSO)
  2. Undertræk Excel-funktion
  3. VBA-længde på streng
  4. Excel ISNUMBER-formel

Kategori: