VBA - Pivot táblázat frissítése / Összes kimutatástábla

Ez az oktatóanyag bemutatja, hogyan lehet frissíteni egy kimutatástáblát vagy az összes kimutatástáblát a VBA használatával.

A pivot táblák az Excel kivételesen hatékony adateszközei. A pivot táblázatok lehetővé teszik számunkra, hogy nagy mennyiségű adatot elemezzünk és értelmezzünk a mezők és sorok csoportosításával és összegzésével.

Amikor létrehozunk egy Pivot táblát, az adatok az úgynevezett Pivot tábla gyorsítótárában tárolódnak. Az adatok ezért a számítógép gyorsítótárában tárolódnak, ami felgyorsítja a Pivot táblát.

Ha a Pivot tábla adatforrása frissítésre kerül, akkor maga a Pivot tábla nem frissül. Az Excel felhasználójának rá kell kattintania a Összes frissítése gombot a szalag Adatok lapján a pivot tábla forrásadatainak frissítéséhez.

Alternatívaként makrókat is írhatunk a VBA -ba, amelyek frissítik az adatokat számunkra!

Frissítse az összes adatkapcsolatot

A legegyszerűbb módszer az adatok frissítésére, ha a VBA segítségével utánozza azt, amit Összes frissítése gomb működik a szalagon.

123 Sub RefreshConnections ()ActiveWorkbook.RefreshAllEnd Sub

Ez a módszer frissíti az összes kapcsolatot az aktív munkafüzet bármely adatával. Ezenkívül nemcsak egyetlen Pivot -táblát frissít, hanem több Pivot -táblát is, ha egynél több adathalmazt csatlakoztat.

Az összes kimutatástábla frissítése

Ha csak a Pivot táblákat szeretné frissíteni a munkafüzetünkben, de kizár minden egyéb adatkapcsolatot, használhatunk egy ún RefreshTable.

Ha a munkafüzetünkben több Pivot -tábla található, akkor az összes Pivot -táblázatot végig kell tekintenünk, hogy mindegyiket frissíthessük. Ennek érdekében először deklarálunk egy kimutatástábla -változót, majd létrehozzuk az egyes hurkokhoz ciklusokat, amelyek végigjárják az aktív munkafüzet összes kimutatástábláját.

123456 RészfrissítésPivotsOnly ()Dim tblPivot PivotTable -kéntMinden tblPivot -hoz az ActiveWorkbook.PivotTable -bantblPivot.RefreshTableKövetkező tblPivotEnd Sub

Hasonló makróval frissíthetjük a Pivot táblákat Aktív lap nem pedig az egész munkafüzetet. Ezután végigpörgetnénk a Pivot táblákat a ActiveSheet nem pedig a ActiveWorkbook.

123456 Sub RefreshActiveSheetPivotsOnly ()Dim tblPivot PivotTable -kéntMinden tblPivot -hoz az ActiveSheet.PivotTable -bantblPivot.RefreshTableKövetkező tblPivotEnd Sub

Ez a makró akkor lenne a leghasznosabb, ha könnyen hozzáférnénk hozzá ActiveSheet. Ennek érdekében létrehozhatunk egy gombot a lapon a makró futtatásához.

Frissítsen egy kimutatástáblát

Ha csak frissíteni szeretnénk a Pivot táblát, amelyen dolgozunk, és nem a munkafüzet összes többi Pivot tábláját, akkor azonosítanunk kell az adott Pivot táblát. Ez persze mindaddig, amíg ismeri a Pivot tábla nevét - ebben az esetben PivotTable1.

123 Sub RefreshOneTableActiveSheet.PivotTables ("PivotTable1"). RefreshTableEnd Sub

A Pivot Table gyorsítótár frissítése

Ha a munkafüzetünkben több Pivot -tábla található, de mindegyik ugyanazt az adatot használja, akkor frissíthetjük a Pivot -tábla gyorsítótárát, nem pedig a tényleges Pivot -táblát. A gyorsítótár frissítése automatikusan frissíti a gyorsítótárban található adatokat használó összes Pivot -táblát.

123456 Sub RefreshCache ()Dim chPivot PivotCache -kéntMinden chPivot -hoz az ActiveWorkbookbanchPivot. FrissítésKövetkező chPivotEnd Sub

Segít a fejlesztés a helyszínen, megosztva az oldalt a barátaiddal

wave wave wave wave wave