Зміст
Впровадження Макрос VBA це найефективніший, найшвидший і найбезпечніший спосіб виконання будь-якої операції в Excel. У цій статті ми покажемо вам, як оновити зведену таблицю в Excel за допомогою VBA.
Завантажити Робочий зошит
Ви можете завантажити безкоштовну практичну книгу Excel тут.
Оновити зведену таблицю за допомогою VBA.xlsm
5 прикладів оновлення зведеної таблиці за допомогою VBA в Excel
Нижче наведено приклад нашої зведеної таблиці, яку ми будемо використовувати протягом всієї статті і покажемо вам 5 різних прикладів освіжаючі зведені таблиці в Excel з VBA код.
1. VBA для оновлення однієї зведеної таблиці в Excel
Якщо ви хочете оновити лише одну зведену таблицю у своєму аркуші Excel,
- Преса Alt + F11 на клавіатурі або перейдіть на вкладку Розробник - Visual Basic відкрити Редактор Visual Basic .
- У вікні коду, що з'явилося, в рядку меню натисніть Вставка -> Модуль .
- Скопіюйте наступний код та вставте його у вікно коду.
Sub RefreshOnePivotTable() ActiveSheet.PivotTables("PivotTable1").RefreshTable End Sub
Ваш код тепер готовий до запуску.
Ось, Зведена таблиця1 це назва нашої зведеної таблиці. Ви пишете назву, яку має ваша зведена таблиця.
- Преса F5 на клавіатурі або в рядку меню виберіть Виконати -> Run Sub/UserForm Ви також можете просто натиснути на кнопку маленька іконка відтворення в рядку підменю для запуску макросу.
Це дозволить оновити зведену таблицю у вашому існуючому аркуші Excel.
Читати далі: Зведена таблиця не освіжає (5 проблем та шляхи їх вирішення)
2. макрос для оновлення всіх зведених таблиць на активному аркуші
Щоб оновити всі зведені таблиці на активному аркуші виконайте наведені нижче дії.
- Як і раніше, відкрито Редактор Visual Basic від Розробник вкладка та Вставка a Модуль у вікні коду.
- У вікні коду скопіюйте наступний код та вставте його.
Sub RefreshActiveSheetPivotTables() Dim PivotTbl As PivotTable For Each PivotTbl In ActiveSheet.PivotTables PivotTbl.RefreshTable Next PivotTbl End Sub
Ваш код тепер готовий до запуску.
- Біжи макрос і всі зведені таблиці на активному аркуші будуть оновлені.
Читати далі: Як оновити всі зведені таблиці в Excel
3. код VBA для оновлення всіх зведених таблиць у декількох книгах
Якщо ви хочете оновити всі зведені таблиці в декількох книгах одночасно з 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 способів)
- Оновлення діапазону зведеної таблиці (5 відповідних способів)
- Як автоматично оновлювати зведену таблицю при зміні вихідних даних
4. оновлення кешу зведеної таблиці за допомогою VBA в Excel
Якщо в книзі є декілька зведених таблиць, які використовують однакові дані, можна оновити тільки кеш зведеної таблиці Оновлення кешу автоматично очищає кеш-пам'ять всіх зведених таблиць, що використовують одне і те ж з'єднання з даними в кеші, замість того, щоб постійно оновлювати саму зведену таблицю.
Кроки для цього є,
- Відкрито Редактор Visual Basic від Розробник вкладка та Вставка a Модуль у вікні коду.
- У вікні коду скопіюйте наступний код та вставте його.
Sub RefreshPivotTableCache() Dim PivotCache As PivotCache For Each PivotCache In ActiveWorkbook.PivotCaches PivotCache.Refresh Next PivotCache End Sub
Ваш код тепер готовий до запуску.
- Біжи код і вся кеш-пам'ять зведеної таблиці буде очищена.
Читати далі: Як автоматично оновлювати зведену таблицю без VBA в Excel (3 розумні методи)
5 Автоматичне оновлення зведеної таблиці при зміні даних за допомогою макросу VBA
Що робити, якщо у вас є зведена таблиця, яка містить велику кількість даних, і все, що ви хочете - це оновити кілька даних, залишивши всю таблицю недоторканою. В Excel ви можете автооновлення зведеної таблиці при оновленні даних з VBA .
- Відкрито Редактор Visual Basic від Забудовник.
- У лівій частині редактора буде розміщено Project Explorer панель, яка містить всі назви робочого аркуша.
- В Project Explorer двічі клацніть на назві аркуша, що містить зведену таблицю.
- З'явиться вікно коду, в якому ми створимо макрос події. Виберіть Робочий аркуш від Об'єкт зліва від модуля коду. Це додасть випадаюче вікно Робочий аркуш_Зміна_вибору до модуля, нам це не потрібно, тому ми видалимо цей фрагмент коду пізніше.
- Потім натисніть на кнопку Процедура у випадаючому списку виберіть Зміна Це додає нову подію у верхній частині модуля коду з назвою Робочий аркуш_Зміна Напишемо наш код тут так видалити код, згенерований за допомогою Робочий аркуш_Зміна_вибору
- Тепер скопіюйте наступний код і вставте його в поле Робочий аркуш_Зміна
Private Sub Worksheet_Change(ByVal Target As Range) Worksheets("PivotTbl").PivotTables("PivotTable1").PivotCache.Refresh End Sub
Ваш код тепер готовий до запуску.
Ось, PivotTbl ім'я аркуша в нашій книзі Excel та Зведена таблиця1 ім'я. Ви пишете ім'я, яке має ваш аркуш і зведена таблиця.
- Тепер при кожній зміні даних у вихідній таблиці даних на робочому аркуші дані у зведеній таблиці будуть автоматично оновлюватися.
Читати далі: Як автоматично оновити зведену таблицю в Excel
Висновок
У цій статті ви дізнаєтеся, як оновити зведену таблицю в Excel з VBA Сподіваюся, ця стаття була для вас дуже корисною. Не соромтеся запитувати, якщо у вас виникнуть запитання щодо цієї теми.