Obsah
Implementace Makro VBA je nejefektivnější, nejrychlejší a nejbezpečnější metodou pro spuštění jakékoli operace v aplikaci Excel. V tomto článku vám ukážeme, jak na to. obnovení otočné tabulky v aplikaci Excel pomocí VBA.
Stáhnout pracovní sešit
Bezplatný cvičný sešit aplikace Excel si můžete stáhnout zde.
Obnovení otočné tabulky pomocí VBA.xlsm
5 příkladů na obnovení tabulky Pivot pomocí VBA v aplikaci Excel
Následuje příklad naší otočné tabulky, kterou budeme používat v celém článku a ukážeme si 5 různých příkladů. obnovení pivotních tabulek v aplikaci Excel pomocí VBA kód.
1. VBA pro obnovení jedné tabulky Pivot v aplikaci Excel
Pokud chcete obnovení pouze jedné otočné tabulky v pracovním listu aplikace Excel,
- Tisk Alt + F11 na klávesnici nebo přejděte na kartu Vývojář -> Visual Basic otevřít Editor jazyka Visual Basic .
- Ve vyskakovacím okně kódu klikněte na panelu nabídek na možnost Insert -> Modul .
- Zkopírujte následující kód a vložte jej do okna kódu.
Sub RefreshOnePivotTable() ActiveSheet.PivotTables("PivotTable1").RefreshTable End Sub
Váš kód je nyní připraven ke spuštění.
Zde, PivotTable1 je název naší otočné tabulky. Vy napíšete název, který má vaše otočná tabulka.
- Tisk F5 na klávesnici nebo na panelu nabídek vyberte možnost Run -> Run Sub/UserForm . Můžete také kliknout na malá ikona Play na panelu podnabídek spustíte makro.
Tím se obnovení otočné tabulky ve stávajícím listu aplikace Excel.
Přečtěte si více: Neobnovení otočné tabulky (5 problémů & řešení)
2. Makro pro obnovení všech tabulek Pivot v aktivním listu
Obnovení všech pivotních tabulek v aktivním listu , postupujte podle níže uvedených pokynů.
- Stejný způsob jako dříve, otevřít Editor jazyka Visual Basic z Vývojář karta a Vložte a Modul v okně kódu.
- V okně kódu zkopírujte a vložte následující kód.
Sub RefreshActiveSheetPivotTables() Dim PivotTbl As PivotTable For Each PivotTbl In ActiveSheet.PivotTables PivotTbl.RefreshTable Next PivotTbl End Sub
Váš kód je nyní připraven ke spuštění.
- Spusťte makro a všechny otočné tabulky v aktivním listu budou obnoveny.
Přečtěte si více: Jak obnovit všechny otočné tabulky v aplikaci Excel
3. Kód VBA pro obnovení všech tabulek Pivot ve více sešitech
Pokud chcete obnovit všechny otočné tabulky ve více sešitech. najednou s VBA pak jsou kroky následující:
- Otevřít Editor jazyka Visual Basic z Vývojář karta a Vložte a Modul v okně kódu.
- V okně kódu zkopírujte a vložte následující kód.
Sub RefreshAllPivotTables() Dim PivotTbl As PivotTable For Each PivotTbl In ActiveWorkbook.PivotTables PivotTbl.RefreshTable Next PivotTbl End Sub
Váš kód je nyní připraven ke spuštění.
- Spustit kód a všechny otočné tabulky ve všech otevřených sešitech aplikace Excel budou obnoveny.
Nezapomeňte na uchovávat všechny sešity otevřít při spuštění tohoto kódu.
Podobná čtení
- Jak upravit tabulku Pivot v aplikaci Excel (5 metod)
- Aktualizace rozsahu otočné tabulky (5 vhodných metod)
- Jak automaticky aktualizovat tabulku Pivot při změně zdrojových dat
4. Obnovení mezipaměti tabulky Pivot pomocí VBA v aplikaci Excel
Pokud máte v sešitě více otočných tabulek, které používají stejná data, můžete je obnovit pouze mezipaměť otočné tabulky namísto neustálého obnovování skutečné tabulky pivotů. Obnovení mezipaměti automaticky vymaže paměť mezipaměti všech tabulek pivotů, které používají stejné datové spojení v mezipaměti.
K tomu slouží následující kroky,
- Otevřít Editor jazyka Visual Basic z Vývojář karta a Vložte a Modul v okně kódu.
- V okně kódu zkopírujte a vložte následující kód.
Sub RefreshPivotTableCache() Dim PivotCache As PivotCache For Each PivotCache In ActiveWorkbook.PivotCaches PivotCache.Refresh Next PivotCache End Sub
Váš kód je nyní připraven ke spuštění.
- Spustit kód a všechny paměti mezipaměti otočné tabulky budou vymazány.
Přečtěte si více: Jak automaticky obnovit otočnou tabulku bez VBA v aplikaci Excel (3 chytré metody)
5. Automatické obnovení tabulky Pivot při změně dat pomocí makra VBA
Co když máte otočnou tabulku s velkým množstvím dat a chcete pouze aktualizovat několik údajů, přičemž celá tabulka zůstane nedotčena. V aplikaci Excel můžete použít následující možnosti automatické obnovení otočné tabulky při aktualizaci dat pomocí VBA .
- Otevřít Editor jazyka Visual Basic z Vývojář.
- Na levé straně editoru by se nacházela položka Projekt Explorer podokno, které obsahuje všechny názvy pracovního listu.
- Na adrese Projekt Explorer , dvakrát klikněte na název listu, který obsahuje otočnou tabulku.
- Zobrazí se okno s kódem, kde vytvoříme makro události. Vyberte možnost Pracovní list z Objekt rozevírací pole na levé straně modulu kódu. Tím se přidá modul. Worksheet_SelectionChange do modulu, ve skutečnosti ji nepotřebujeme, takže tuto část kódu později odstraníme.
- Pak klikněte na Postup rozevírací seznam a vyberte Změna . Tím se na začátek modulu kódu přidá nová událost s názvem Pracovní list_Change . Zde napíšeme náš kód takto smazat kód vygenerovaný Worksheet_SelectionChange
- Nyní zkopírujte následující kód a vložte jej do pole Pracovní list_Change
Private Sub Worksheet_Change(ByVal Target As Range) Worksheets("PivotTbl").PivotTables("PivotTable1").PivotCache.Refresh End Sub
Váš kód je nyní připraven ke spuštění.
Zde, PivotTbl je název pracovního listu v našem sešitu Excelu a PivotTable1 je název naší tabulky Pivot Table. Napíšete název, který má váš pracovní list a tabulka Pivot Table.
- Nyní se při každé změně dat v původní tabulce dat v pracovním listu automaticky aktualizují data v otočné tabulce.
Přečtěte si více: Jak automaticky obnovit tabulku Pivot v aplikaci Excel
Závěr
Tento článek vám ukázal, jak obnovení otočné tabulky v aplikaci Excel pomocí VBA . doufám, že pro vás byl tento článek velmi přínosný. Neváhejte se zeptat, pokud máte k tématu nějaké dotazy.