VBA - обновлять сводную таблицу при изменении данных

В этом руководстве будет показано, как обновить сводную таблицу при изменении данных с помощью VBA.

Сводные таблицы - это исключительно мощный инструмент для работы с данными в Excel. Сводные таблицы позволяют нам анализировать и интерпретировать большие объемы данных путем группировки и суммирования полей и строк.

Когда мы создаем сводную таблицу, данные хранятся в так называемом кэше сводной таблицы. Таким образом, данные хранятся в кэш-памяти ПК, что ускоряет работу сводной таблицы.

Если мы обновим данные, на которые опирается сводная таблица, сама сводная таблица не будет обновляться автоматически. Нам нужно будет нажать кнопку «Обновить все» на вкладке «Данные» на ленте, чтобы обновить сводную таблицу.

Обновление сводной таблицы в VBA

Когда данные изменяются, мы можем написать макрос в Событие Worksheet_Change для обновления сводной таблицы. Чтобы получить доступ к событию изменения рабочего листа, нам нужно перейти в редактор Visual Basic в Excel (VBE).

Нажмите Alt + F11 для доступа к VBE или в Лента, Выбрать Разработчик> Visual Basic.

Примечание. Если вы не видите ленты разработчика, вам необходимо включить ее.

в Обозреватель проекта, выберите лист, содержащий сводную таблицу.

в Объект в раскрывающемся списке выберите Рабочий лист. Это автоматически добавит событие для Selection_Change.

в Процедура в раскрывающемся списке выберите Изменять.

А Изменять Событие будет добавлено в модуль VBA, содержащийся в листе.

ПРИМЕЧАНИЕ: Мы можем удалить Worksheet_SelectionChange событие как не требуется.

В рамках Worksheet_Change событие, введите следующий код:

1 ActiveSheet.PivotTables ("PivotTable1"). RefreshTable

Вернитесь к листу Excel и измените значение в таблице данных. После этого данные в сводной таблице будут обновлены автоматически.

Вы поможете развитию сайта, поделившись страницей с друзьями

wave wave wave wave wave