Обновление всех сводных таблиц в моей рабочей книге Excel с макросом

У меня есть рабочая книга с 20 различными сводными таблицами. Там какой-либо простой способ состоит в том, чтобы найти все сводные таблицы и обновить их в VBA?

79
задан Lipis 24 July 2019 в 16:50
поделиться

4 ответа

Да.

ThisWorkbook.RefreshAll

Или, если Ваша версия Excel является достаточно взрослой,

Dim Sheet as WorkSheet, Pivot as PivotTable
For Each Sheet in ThisWorkbook.WorkSheets
    For Each Pivot in Sheet.PivotTables
        Pivot.RefreshTable
        Pivot.Update
    Next
Next
162
ответ дан Andy Terra 24 November 2019 в 10:05
поделиться

Этот код VBA обновит все таблицы/диаграммы центра в рабочей книге.

Sub RefreshAllPivotTables()

Dim PT As PivotTable
Dim WS As Worksheet

    For Each WS In ThisWorkbook.Worksheets

        For Each PT In WS.PivotTables
          PT.RefreshTable
        Next PT

    Next WS

End Sub

Другая non-programatic опция:

  • Щелчок правой кнопкой по каждой сводной таблице
  • опции Select Table
  • Галочка 'Обновление на открытом' опция.
  • Нажимают на кнопку OK

, Это обновит сводную таблицу каждый раз, когда рабочая книга открыта.

26
ответ дан Robert Mearns 24 November 2019 в 10:05
поделиться

Существует обновление вся опция на панели инструментов Pivot Table.Все, довольно. Не должны делать ничего больше.

ctrl+alt+F5

Нажатия
5
ответ дан 24 November 2019 в 10:05
поделиться

Вы имеете набор PivotTables на объект рабочего листа VB . Так, будет работать быстрый цикл как это:

Sub RefreshPivotTables()
    Dim pivotTable As PivotTable
    For Each pivotTable In ActiveSheet.PivotTables
        pivotTable.RefreshTable
    Next
End Sub

Примечания от канавок:

  1. Не забывают оставлять любые защищенные листы без защиты прежде, чем обновить PivotTable.
  2. часто Сохраняют .
  3. я буду думать о больше и обновлять в свое время...:)

Удачи!

1
ответ дан LohanJ 24 November 2019 в 10:05
поделиться
Другие вопросы по тегам:

Похожие вопросы: