Съдържание
Внедряване на Макрос VBA е най-ефективният, най-бързият и най-сигурният метод за изпълнение на всякакви операции в Excel. В тази статия ще ви покажем как да опресняване на въртящата се таблица в Excel с помощта на VBA.
Изтегляне на работна тетрадка
Можете да изтеглите безплатната учебна тетрадка на Excel от тук.
Опресняване на таблицата на завъртане с VBA.xlsm
5 примера за опресняване на таблицата Pivot с VBA в Excel
Следва пример за нашата въртяща се таблица, която ще използваме в цялата статия и ще ви покажем 5 различни примера за опресняване на таблици с въртеливи движения в Excel с VBA код.
1. VBA за опресняване на една таблица Pivot в Excel
Ако искате да опресняване само на една въртяща се таблица в работния лист на Excel,
- Натиснете Alt + F11 на клавиатурата или отидете в раздела Разработчик -> Visual Basic да отворите Редактор на Visual Basic .
- В изскачащия прозорец с код, в лентата с менюта щракнете върху Вмъкване -> Модул .
- Копирайте следния код и го поставете в прозореца за код.
Sub RefreshOnePivotTable() ActiveSheet.PivotTables("PivotTable1").RefreshTable End Sub
Вашият код вече е готов за изпълнение.
Тук, PivotTable1 е името на нашата таблица Pivot Table. Вие записвате името, което има вашата таблица Pivot Table.
- Натиснете F5 на клавиатурата или от лентата с менюта изберете Run -> Run Sub/UserForm Можете също така просто да щракнете върху малка икона Play в лентата с подменюта, за да стартирате макроса.
Това ще опресняване на таблицата за завъртане в съществуващия работен лист на Excel.
Прочетете повече: Таблицата на завъртане не се опреснява (5 проблема & Решения)
2. Макрос за опресняване на всички таблици Pivot в активния работен лист
Обновяване на всички таблици с въртящи се елементи в активния работен лист , следвайте стъпките по-долу.
- По същия начин, както преди, отворете Редактор на Visual Basic от Разработчик таб и Вмъкване на a Модул в прозореца с кода.
- В прозореца за код копирайте следния код и го поставете.
Sub RefreshActiveSheetPivotTables() Dim PivotTbl As PivotTable For Each PivotTbl In ActiveSheet.PivotTables PivotTbl.RefreshTable Next PivotTbl End Sub
Вашият код вече е готов за изпълнение.
- Изпълнявайте макроса и всички таблици с въртящи се елементи в активния работен лист ще бъдат опреснени.
Прочетете повече: Как да опресните всички таблици с пивоти в Excel
3. Код VBA за опресняване на всички таблици Pivot в няколко работни книги
Ако искате да опресняване на всички въртящи се таблици в няколко работни книги едновременно с VBA След това стъпките са:
- Отворете Редактор на Visual Basic от Разработчик таб и Вмъкване на a Модул в прозореца с кода.
- В прозореца за код копирайте следния код и го поставете.
Sub RefreshAllPivotTables() Dim PivotTbl As PivotTable For Each PivotTbl In ActiveWorkbook.PivotTables PivotTbl.RefreshTable Next PivotTbl End Sub
Вашият код вече е готов за изпълнение.
- Изпълнявайте кода и всички таблици с въртящи се елементи във всички отворени работни книги на Excel ще бъдат опреснени.
Не забравяйте за да запазите всички работни книги отворен докато изпълнявате този код.
Подобни четива
- Как да редактирате таблица с пивот в Excel (5 метода)
- Актуализиране на обхвата на таблицата Pivot (5 подходящи метода)
- Как автоматично да актуализирате таблица Pivot при промяна на изходните данни
4. Опресняване на кеша на таблицата Pivot с VBA в Excel
Ако в работната си книга имате няколко таблици с въртящи се елементи, които използват едни и същи данни, можете да опресняване само на кеша на таблицата на въртене вместо да обновявате действителната въртяща се таблица през цялото време. Обновяването на кеша автоматично изчиства кеш паметта на всички въртящи се таблици, които използват същата връзка с данни в кеша.
Стъпките за това са,
- Отвори Редактор на Visual Basic от Разработчик таб и Вмъкване на a Модул в прозореца с кода.
- В прозореца за код копирайте следния код и го поставете.
Sub RefreshPivotTableCache() Dim PivotCache As PivotCache For Each PivotCache In ActiveWorkbook.PivotCaches PivotCache.Refresh Next PivotCache End Sub
Вашият код вече е готов за изпълнение.
- Изпълнявайте кодът и всички кешови памети на таблицата за завъртане ще бъдат изчистени.
Прочетете още: Как автоматично да опреснявате таблицата Pivot без VBA в Excel (3 интелигентни метода)
5. Автоматично обновяване на таблицата Pivot при промяна на данните с макрос VBA
Какво ще кажете, ако имате въртяща се таблица с голямо количество данни и искате само да актуализирате няколко данни, като цялата таблица остане незасегната? В Excel можете да автоматично опресняване на таблицата за завъртане докато актуализирате данните с VBA .
- Отворете Редактор на Visual Basic от Разработчик.
- В лявата част на редактора ще има Проект Explorer панел, който съдържа всички имена на работния лист.
- В Проект Explorer , щракнете два пъти върху името на листа, който съдържа таблицата за завъртане.
- Ще се появи прозорец с код, в който ще създадем макрос на събитие. Работен лист от Обект падащото поле в лявата част на модула за код. Това ще добави Worksheet_SelectionChange към модула, всъщност нямаме нужда от него, така че ще изтрием тази част от кода по-късно.
- След това кликнете върху Процедура падащия списък и изберете Промяна . Това добавя ново събитие в горната част на модула с код, наречено Worksheet_Change . Ще напишем кода си тук така изтриване на кода, генериран от Worksheet_SelectionChange
- Сега копирайте следния код и го поставете в Worksheet_Change
Private Sub Worksheet_Change(ByVal Target As Range) Worksheets("PivotTbl").PivotTables("PivotTable1").PivotCache.Refresh End Sub
Вашият код вече е готов за изпълнение.
Тук, PivotTbl е името на работния лист в нашата работна книга на Excel, а PivotTable1 е името на нашата таблица Pivot. Вие записвате името, което имат вашият работен лист и таблицата Pivot.
- Сега всеки път, когато промените данните в оригиналната таблица с данни в работния лист, данните в таблицата с въртящи се елементи ще се актуализират автоматично.
Прочетете повече: Как автоматично да опресните таблицата Pivot в Excel
Заключение
Тази статия ви показва как да опресняване на таблицата за завъртане в Excel с VBA . надявам се, че тази статия е била много полезна за вас. Не се колебайте да питате, ако имате някакви въпроси по темата.