Innehållsförteckning
I den här artikeln visar jag dig hur du kan uppdatera alla pivottabeller i ditt arbetsblad eller din arbetsbok med VBA i Excel. Du lär dig också att uppdatera en enskild pivottabell , samt Pivottabell cache.
Uppdatera alla pivottabeller med VBA i Excel (snabbvisning)
Dim Table As PivotTable For Each Table In ActiveWorkbook.PivotTables Table.RefreshTable Next Table
Detta kommer att uppdatera alla Pivottabeller i den aktiva arbetsboken.
Ladda ner övningsboken
Ladda ner den här arbetsboken för att träna medan du läser den här artikeln.
Uppdatera alla pivottabeller.xlsm4 sätt att uppdatera alla pivottabeller med VBA i Excel
A Pivottabell är en speciell typ av tabell i ett Excel-arbetsblad som innehåller två kategorier av data, med titeln Rad och Värde respektive.
Alla kolumner i tabellen är indelade i dessa två kategorier.
Den genereras automatiskt från en datamängd om du väljer datamängden och går till Infoga> PivotTable i Excel-verktygsfältet.
I dag är vårt mål att lära oss hur vi kan uppdatera alla de Pivottabeller av ett arbetsblad eller en arbetsbok med VBA i Excel.
1. Uppdatera en enskild pivottabell i Excel
Först ska vi lära oss att uppdatera en enda Pivottabell .
För att uppdatera en enskild Pivottabell först måste du referera till den som en PivotTable objekt.
Då måste du använda RefreshTable metod för att VBA .
Här har vi en Pivottabell kallas . PivotTable1 i det aktiva arbetsbladet. (Klicka här för att få reda på hur man får namnet på en pivottabell ).
För att uppdatera den måste vi använda följande kodrader:
Dim Table1 As PivotTable Set Table1 = ActiveSheet.PivotTables("PivotTable1") Table1.RefreshTable
Kör koden, och den uppdaterar Pivottabell kallas . PivotTable1 i det aktiva arbetsbladet.
Läs mer: Hur du automatiskt uppdaterar pivottabellen i Excel (2 metoder)
2. Uppdatera alla pivottabeller i ett kalkylblad i Excel
Nu uppdaterar vi alla Pivottabeller av ett arbetsblad med VBA .
För att uppdatera alla Pivottabeller av det aktiva arbetsbladet, måste du gå igenom varje Pivottabell av den ActiveSheet.PivotTables objektet. Använd sedan RefreshTable metod.
Dim Table As PivotTable For Each Table In ActiveSheet.PivotTables Table.RefreshTable Next Table
Kör koden och den kommer att uppdatera alla pivottabeller på det aktiva arbetsbladet.
Läs mer: Pivot tabell uppdateras inte (5 frågor & Lösningar)
3. Uppdatera alla pivottabeller i en arbetsbok i Excel
Du kan också uppdatera alla Pivottabeller i en arbetsbok i Excel.
För att uppdatera alla Pivottabeller i den aktiva arbetsboken, gå igenom varje tabell med hjälp av ActiveWorkbook.PivotTables objektet i VBA Använd sedan RefreshTable metod.
Dim Table As PivotTable For Each Table In ActiveWorkbook.PivotTables Table.RefreshTable Next Table
Den här koden uppdaterar alla Pivottabeller i den aktiva arbetsboken.
Läs mer: 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 din arbetsbok som använder samma data, är det bättre att uppdatera Cache för pivottabellen i stället för att uppdatera Pivottabell .
För att uppdatera Cache för pivottabellen , gå igenom varje Cache för pivottabellen av den aktiva arbetsboken med hjälp av ActiveWorkbook.PivotCaches objekt.
Använd sedan R efresh metod för att VBA .
Dim Cache As PivotCache For Each Cache In ActiveWorkbook.PivotCaches Cache.Refresh Next Cache
Den uppdaterar alla Cache för pivottabellen från den aktiva arbetsboken.
Läs mer: Hur man automatiskt uppdaterar pivottabellen utan VBA i Excel (3 smarta metoder)
Saker att komma ihåg
Här har vi visat att vi ska uppdatera Pivottabeller endast från det aktiva arbetsbladet eller den aktiva arbetsboken. Om du vill uppdatera data från en arbetsbok eller ett arbetsblad som inte är aktivt, använd namnet på arbetsbladet eller arbetsboken i stället för ActiveSheet eller ActiveWorkbook objekt.
Om du t.ex. vill uppdatera alla Pivottabeller från Blad 1 , använda For Each Table In Worksheets("Sheet1").PivotTables .
Och för att fräscha upp från Arbetsbok1 , använda For Each Table In Workbooks("Workbook1").PivotTables .
Slutsats
Med hjälp av dessa metoder kan du uppdatera alla de Pivottabeller från ett arbetsblad eller en arbetsbok med VBA i Excel. Om du har några frågor är du välkommen att ställa dem till oss.