1

У меня есть рабочий лист с некоторыми данными (sheet1) и другой рабочий лист с сводной таблицей (sheet2).

Как убедиться, что при обновлении данных в sheet1 сводная таблица sheet2 обновляется?
а. Как застраховать автоматическое обновление или если
б. Как вручную обновить сводную таблицу, чтобы использовать последние данные

Что я знаю, так это то, что я могу выбрать «Обновить данные при открытии файла», но я не хочу открывать и закрывать файл.

ТИА

2 ответа2

1
a. How do I insure of an automatic update?

Я не думаю, что это возможно, когда ваш источник сводной информации находится в той же книге. Для внешних источников данных вы можете установить обновление каждые х минут.

b. How do I manually refresh the pivot table to use the latest data?

Когда активная ячейка находится в сводной таблице, вам будет доступна опция « Обновить» в разделе « Сводные таблицы» | Параметры на панели ленты.

0

Вы можете использовать VBA и события WorksheetChange или WorksheetCalculate на листе данных для обновления сводной таблицы. Я гуглил это, но не нашел подробного обсуждения, которое я запомнил, так что вот краткий пример. Если вы изменяете данные только вручную на листе данных, вам просто нужно событие WorksheetChange, но если данные поступают из других листов или рабочих книг, вам нужно событие Calculate:

Private Sub Worksheet_Calculate()
Call RefreshPT
End Sub

Private Sub Worksheet_Change(ByVal Target As Range)
Call RefreshPT
End Sub

Sub RefreshPT()
Sheet1.PivotTables(1).PivotCache.Refresh
End Sub

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .