VBA för att uppdatera pivottabellen i Excel (5 exempel)

  • Dela Detta
Hugh West

Genomförande av VBA-makro är den mest effektiva, snabbaste och säkraste metoden för att utföra alla operationer i Excel. I den här artikeln kommer vi att visa dig hur du kan uppdatera pivottabellen i Excel med hjälp av VBA.

Ladda ner arbetsboken

Du kan ladda ner den kostnadsfria Excel-arbetsboken för övningar här.

Uppdatera pivottabellen med VBA.xlsm

5 exempel på att uppdatera pivottabellen med VBA i Excel

Nedan följer ett exempel på vår pivottabell som vi kommer att använda under hela artikeln och visa dig 5 olika exempel på uppdatera pivottabeller i Excel med VBA kod.

1. VBA för att uppdatera en pivottabell i Excel

Om du vill uppdatera bara en pivottabell i ditt Excel-arbetsblad,

  • Tryck på Alt + F11 på tangentbordet eller gå till fliken Utvecklare -> Visual Basic för att öppna Redigerare för Visual Basic .

  • I popup-kodfönstret klickar du i menyraden på Infoga -> Modul .

  • Kopiera följande kod och klistra in den i kodfönstret.
 Sub RefreshOnePivotTable() ActiveSheet.PivotTables("PivotTable1").RefreshTable End Sub 

Din kod är nu redo att köras.

Här, PivotTable1 är vårt namn på pivottabellen. Du skriver det namn som din pivottabell har.

  • Tryck på F5 på tangentbordet eller välj i menyraden Kör -> Kör Sub/UserForm Du kan också bara klicka på liten Play-ikon i undermenyfältet för att köra makrot.

Detta kommer att uppdatera pivottabellen i ditt befintliga Excel-arbetsblad.

Läs mer: Pivot tabell uppdateras inte (5 frågor & Lösningar)

2. Makro för att uppdatera alla pivottabeller i det aktiva arbetsbladet

Uppdatera alla pivottabeller i det aktiva arbetsbladet följ stegen nedan.

  • På samma sätt som tidigare, öppna Redigerare för Visual Basic från Utvecklare och Infoga a Modul i kodfönstret.
  • I kodfönstret kopierar du följande kod och klistrar in den.
 Sub RefreshActiveSheetPivotTables() Dim PivotTbl As PivotTable For Each PivotTbl In ActiveSheet.PivotTables PivotTbl.RefreshTable Next PivotTbl End Sub 

Din kod är nu redo att köras.

  • Kör makrot och alla pivottabeller i det aktiva arbetsbladet uppdateras.

Läs mer: Hur du uppdaterar alla pivottabeller i Excel

3. VBA-kod för att uppdatera alla pivottabeller i flera arbetsböcker

Om du vill uppdatera alla pivottabeller i flera arbetsböcker omedelbart med VBA kod är stegen följande:

  • Öppna Redigerare för Visual Basic från Utvecklare och Infoga a Modul i kodfönstret.
  • I kodfönstret kopierar du följande kod och klistrar in den.
 Sub RefreshAllPivotTables() Dim PivotTbl As PivotTable For Each PivotTbl In ActiveWorkbook.PivotTables PivotTbl.RefreshTable Next PivotTbl End Sub 

Din kod är nu redo att köras.

  • Kör koden och alla pivottabeller i alla dina öppna Excel-arbetsböcker kommer att uppdateras.

Kom ihåg för att behålla alla arbetsböcker öppna medan du kör den här koden.

Liknande läsningar

  • Hur man redigerar en pivottabell i Excel (5 metoder)
  • Uppdatera pivottabellens intervall (5 lämpliga metoder)
  • Hur du automatiskt uppdaterar en pivottabell när källdata ändras

4. Uppdatera cachen för pivottabellen med VBA i Excel

Om du har flera pivottabeller i arbetsboken som använder samma data kan du uppdatera endast cachen för pivottabellen istället för att uppdatera den faktiska pivottabellen hela tiden. Uppdatering av cacheminnet rensar automatiskt cacheminnet för alla pivottabeller som använder samma dataanslutning i cacheminnet.

Stegen för att göra det är,

  • Öppna Redigerare för Visual Basic från Utvecklare och Infoga a Modul i kodfönstret.
  • I kodfönstret kopierar du följande kod och klistrar in den.
 Sub RefreshPivotTableCache() Dim PivotCache As PivotCache For Each PivotCache In ActiveWorkbook.PivotCaches PivotCache.Refresh Next PivotCache End Sub 

Din kod är nu redo att köras.

  • Kör koden och alla minnen i cachen för pivottabellen kommer att rensas.

Läs mer: Hur man automatiskt uppdaterar pivottabellen utan VBA i Excel (3 smarta metoder)

5. Automatisk uppdatering av pivottabellen när du ändrar data med VBA-makro

Tänk om du har en pivottabell med en stor mängd data och allt du vill är att uppdatera några få data utan att hela tabellen påverkas. I Excel kan du Automatisk uppdatering av pivottabellen samtidigt som man uppdaterar data med VBA .

  • Öppna Redigerare för Visual Basic från Utvecklare.
  • På vänster sida av redigeraren finns det en Utforskare av projekt som innehåller alla namn på arbetsbladet.
  • Utforskare av projekt dubbelklicka på det ark som innehåller pivottabellen.

  • Kodfönstret visas där vi ska skapa ett händelsemakro. Välj Arbetsblad från Objekt till vänster om kodmodulen. Detta kommer att lägga till en Arbetsblad_SelectionChange händelsen till modulen, men vi behöver den faktiskt inte, så vi tar bort den här delen av koden senare.
  • Klicka sedan på Förfarande och välj Ändra Detta lägger till en ny händelse högst upp i kodmodulen som heter Arbetsblad_förändring Vi skriver vår kod här på följande sätt ta bort den kod som genereras av Arbetsblad_SelectionChange

  • Kopiera nu följande kod och klistra in den i Arbetsblad_förändring
 Private Sub Worksheet_Change(ByVal Target As Range) Worksheets("PivotTbl").PivotTables("PivotTable1").PivotCache.Refresh End Sub 

Din kod är nu redo att köras.

Här, PivotTbl är arbetsbladets namn i vår Excel-arbetsbok och PivotTable1 är vårt namn på pivottabellen. Du skriver det namn som arbetsbladet och pivottabellen har.

  • Varje gång du ändrar uppgifterna i den ursprungliga datatabellen i arbetsbladet uppdateras uppgifterna i pivottabellen automatiskt.

Läs mer: Hur man automatiskt uppdaterar pivottabellen i Excel

Slutsats

I den här artikeln fick du veta hur du kan uppdatera pivottabellen i Excel med VBA Jag hoppas att den här artikeln har varit till stor nytta för dig. Du får gärna fråga om du har några frågor om ämnet.

Hugh West är en mycket erfaren Excel-tränare och analytiker med över 10 års erfarenhet i branschen. Han har en kandidatexamen i redovisning och ekonomi och en magisterexamen i företagsekonomi. Hugh har en passion för undervisning och har utvecklat ett unikt undervisningssätt som är lätt att följa och förstå. Hans expertkunskap om Excel har hjälpt tusentals studenter och yrkesverksamma över hela världen att förbättra sina färdigheter och utmärka sig i sina karriärer. Genom sin blogg delar Hugh med sig av sin kunskap med världen, och erbjuder gratis Excel-handledning och onlineutbildning för att hjälpa individer och företag att nå sin fulla potential.