ピボットテーブルを更新する
ピボットテーブルを作成した後に元データの変更や、テーブル名の変更等を行った場合、
そのままではピボットテーブルに反映されません。
データを反映させる方法は2パターンあります。
ブック内の全てを更新
ブック内の全てのピボットテーブルを更新する場合は、
Workbookオブジェクト の RefreshAllメソッド を使用します。
構文
Object.RefreshAll
| Object | Workbookオブジェクト を表す変数です。 |
特定のものを更新
一部のピボットテーブルのみを更新する場合は、
PivotCacheオブジェクト の Refreshメソッド を使用します。
構文
Object.Refresh
| Object | PivotCacheオブジェクト を表す変数です。 |
記述例
Worksheets(“シート名”).PivotTables(数値または”テーブル名”).PivotCache.Refresh
ピボットテーブルを更新するサンプルコード
Public Sub RefreshAll()
'元データの数値を変える
Worksheets("Sheet1").Range("C2") = 30
'■全てのピボットテーブルを更新する
ActiveWorkbook.RefreshAll
End Sub
Public Sub Refresh()
'元データの数値を変える
Worksheets("Sheet1").Range("C2") = 50
'■ピボットテーブルを指定して更新する
ActiveSheet.PivotTables(1).PivotCache.Refresh
End Sub
注意点
- これと言った理由が無いのであれば、RefreshAll で問題ないと思います。
関連記事



コメント