Kazalo
Izvajanje Makro VBA je najučinkovitejša, najhitrejša in najvarnejša metoda za izvedbo katere koli operacije v Excelu. V tem članku vam bomo pokazali, kako osvežite vrtilno tabelo v Excelu z uporabo VBA.
Prenos delovnega zvezka
Brezplačni delovni zvezek Excel lahko prenesete s tega mesta.
Osvežitev vrtilne tabele z VBA.xlsm
5 primerov za osvežitev preglednice Pivot z VBA v Excelu
Sledi primer naše vrtilne tabele, ki jo bomo uporabljali v celotnem članku in vam prikazali 5 različnih primerov osveževanje vrtilnih tabel v Excelu z VBA koda.
1. VBA za osvežitev ene preglednice Pivot v Excelu
Če želite osvežitev samo ene vrtilne tabele v delovnem listu programa Excel,
- Pritisnite Alt + F11 na tipkovnici ali odprite zavihek Razvijalec -> Visual Basic da odprete Urejevalnik Visual Basic .
- V pojavnem oknu kode v menijski vrstici kliknite Vstavljanje -> Modul .
- Kopirajte naslednjo kodo in jo prilepite v okno s kodo.
Sub RefreshOnePivotTable() ActiveSheet.PivotTables("PivotTable1").RefreshTable End Sub
Vaša koda je zdaj pripravljena za zagon.
Tukaj, PivotTable1 je ime naše vrtilne tabele. Napišite ime, ki ga ima vaša vrtilna tabela.
- Pritisnite F5 na tipkovnici ali v menijski vrstici izberite Run -> Run Sub/UserForm Lahko tudi kliknete na majhna ikona za predvajanje v podmeniju za zagon makra.
To bo osvežitev vrtilne tabele v obstoječem delovnem listu programa Excel.
Preberite več: Pivotna tabela se ne osveži (5 težav in rešitve)
2. Makro za osvežitev vseh tabel Pivot v aktivnem delovnem listu
Osvežitev vseh vrtilnih tabel v aktivnem delovnem listu , sledite naslednjim korakom.
- Na enak način kot prej odprite Urejevalnik Visual Basic iz Razvijalec zavihek in Vstavite a Modul v oknu kode.
- V oknu s kodo kopirajte naslednjo kodo in jo prilepite.
Sub RefreshActiveSheetPivotTables() Dim PivotTbl As PivotTable For Each PivotTbl In ActiveSheet.PivotTables PivotTbl.RefreshTable Next PivotTbl End Sub
Vaša koda je zdaj pripravljena za zagon.
- Spustite in vse vrtilne tabele v aktivnem delovnem listu bodo osvežene.
Preberite več: Kako osvežiti vse tabele Pivot v Excelu
3. Koda VBA za osvežitev vseh tabel Pivot v več delovnih zvezkih
Če želite osvežite vse vrtilne tabele v več delovnih zvezkih takoj z VBA koda, potem so koraki naslednji:
- Odpri Urejevalnik Visual Basic iz Razvijalec zavihek in Vstavite a Modul v oknu kode.
- V oknu s kodo kopirajte naslednjo kodo in jo prilepite.
Sub RefreshAllPivotTables() Dim PivotTbl As PivotTable For Each PivotTbl In ActiveWorkbook.PivotTables PivotTbl.RefreshTable Next PivotTbl End Sub
Vaša koda je zdaj pripravljena za zagon.
- Spustite kodo in vse vrtilne tabele v vseh odprtih delovnih zvezkih programa Excel bodo osvežene.
Ne pozabite na da ohranite vse delovne zvezke odprta med izvajanjem te kode.
Podobna branja
- Kako urediti tabelo Pivot v Excelu (5 metod)
- Posodobitev območja vrtilne tabele (5 primernih metod)
- Kako samodejno posodobiti tabelo Pivot, ko se spremenijo izvorni podatki
4. Osveževanje predpomnilnika preglednice Pivot z VBA v Excelu
Če imate v delovnem zvezku več vrtilnih tabel, ki uporabljajo iste podatke, lahko osvežite samo predpomnilnik vrtilne tabele Osveževanje predpomnilnika samodejno počisti predpomnilnik vseh vrtilnih tabel, ki uporabljajo isto podatkovno povezavo v predpomnilniku.
Koraki za to so naslednji,
- Odpri Urejevalnik Visual Basic iz Razvijalec zavihek in Vstavite a Modul v oknu kode.
- V oknu s kodo kopirajte naslednjo kodo in jo prilepite.
Sub RefreshPivotTableCache() Dim PivotCache As PivotCache For Each PivotCache In ActiveWorkbook.PivotCaches PivotCache.Refresh Next PivotCache End Sub
Vaša koda je zdaj pripravljena za zagon.
- Spustite kodo in vsi predpomnilniki predpomnilnika vrtilne tabele bodo izbrisani.
Preberite več: Kako samodejno osvežiti Pivot tabelo brez VBA v Excelu (3 pametne metode)
5. Samodejno osveževanje vrtilne tabele med spreminjanjem podatkov z makrom VBA
Kaj če imate vrtilno tabelo z veliko količino podatkov in želite posodobiti le nekaj podatkov, medtem ko je celotna tabela nedotaknjena? V Excelu lahko samodejno osvežitev vrtilne tabele med posodabljanjem podatkov z VBA .
- Odpri Urejevalnik Visual Basic iz Razvijalec.
- Na levi strani urejevalnika je na voljo Raziskovalec projekta podokno z vsemi imeni delovnega lista.
- Na spletnem mestu Raziskovalec projekta , dvakrat kliknite na ime lista, ki vsebuje vrtilno tabelo.
- Pojavilo se bo okno s kodo, v katerem bomo ustvarili makro dogodek. Delovni list iz Objekt v spustnem polju na levi strani modula kode. S tem boste dodali Worksheet_SelectionChange v modul, ga pravzaprav ne potrebujemo, zato bomo ta del kode pozneje izbrisali.
- Nato kliknite na Postopek spustni seznam in izberite Sprememba To doda nov dogodek na vrhu modula kode z imenom Delovni list_Change . Tu bomo zapisali našo kodo, tako da izbriši kodo, ki jo ustvari Worksheet_SelectionChange
- Zdaj kopirajte naslednjo kodo in jo prilepite v Delovni list_Change
Private Sub Worksheet_Change(ByVal Target As Range) Worksheets("PivotTbl").PivotTables("PivotTable1").PivotCache.Refresh End Sub
Vaša koda je zdaj pripravljena za zagon.
Tukaj, PivotTbl je ime delovnega lista v naši delovni knjigi programa Excel in PivotTable1 je ime naše vrtilne tabele. Napišite ime, ki ga imata vaš delovni list in vrtilna tabela.
- Zdaj se bodo podatki v vrtilni tabeli samodejno posodobili vsakič, ko spremenite podatke v prvotni podatkovni tabeli v delovnem listu.
Preberite več: Kako samodejno osvežiti tabelo Pivot v Excelu
Zaključek
V tem članku je bilo prikazano, kako osvežitev vrtilne tabele v Excelu z VBA Upam, da vam je ta članek zelo koristil. Če imate kakršna koli vprašanja v zvezi s to temo, vas prosim, da jih postavite.