大体でIT
大体でIT
Excel VBAで、ピボットテーブルを更新する方法について、ご紹介します。更新する種類としては、「特定のピボットテーブルのみ」を更新する方法と、「ブック全体」のピボットテーブルを更新する方法があります。更新したくないピボットテーブルがなければ、「ブック全体」を更新する方法が簡単です。
この記事では、VBAでピボットテーブルを更新する方法について、ご紹介します。
ピボットテーブルを更新する種類は、次の2つがあります。
- 特定のピボットテーブルのみを更新
- ブック全体のピボットテーブルを更新
他のピボットテーブルは更新したくない、というのがなければ、「ブック全体のピボットテーブルを更新」する方が簡単です。
では、VBAでピボットテーブルを更新する方法について、解説していきます。
目次から使いそうな説明のところへ移動すると便利ですよ。
ピボットテーブルを更新するVBAコードを、まとめました。
VBAコードだけを確認したい場合に、ご活用ください。
'ピボットテーブルを更新
ActiveSheet.PivotTables(1).PivotCache.Refresh
'ブック全体のピボットテーブルを更新
ActiveWorkbook.RefreshAll
VBAで、指定したピボットテーブルを更新してみます。
ピボットテーブルを更新するVBAコードは、こんな感じです。
Sub TEST1()
'更新する
ActiveSheet.PivotTables(1).PivotCache.Refresh
End Sub
では、元データの値を変更して、ピボットテーブルを更新してみます。
元データの値を変更して、更新するVBAコードは、こんな感じになります。
Sub TEST2()
'元データの値を変更
Worksheets("元データ").Range("C7") = 9999
'更新する
ActiveSheet.PivotTables(1).PivotCache.Refresh
End Sub
元データからピボットテーブルを作成しておきました。
ピボットテーブルを作成しておく
元データの値が変更される
ピボットテーブルを更新できた
こんな感じで、「.PivotCache.Refresh」を使うと、特定のピボットテーブルを変更することができます。
ピボットテーブルの名前を変更して、更新してみます。
Sub TEST3()
'名前の変更
ActiveSheet.PivotTables(1).Name = "ピボットテーブル2"
'更新する
ActiveSheet.PivotTables(1).PivotCache.Refresh
End Sub
初期状態のピボットテーブル
ピボットテーブルの名前を更新できた
VBAで、「ブック全体」のピボットテーブルを更新してみます。
特に理由がなければ、この「ブック全体」のピボットテーブルの更新をする方が、簡単です。
「ブック全体」のピボットテーブルを更新するVBAコードは、こんな感じになります。
Sub TEST4()
'ブック全体を更新
ActiveWorkbook.RefreshAll
End Sub
では、複数のピボットテーブルを作成して、更新してみます。
元データを変更して、複数のピボットテーブルを更新してみます。
Sub TEST5()
'元データを変更
Worksheets("元データ").Range("C7") = 9999
'ブック全体を更新
ActiveWorkbook.RefreshAll
End Sub
最初に、元データから複数のピボットテーブルを作成しておきました。
複数のピボットテーブルを作成
元データの値が変更される
複数のピボットテーブルを更新できた
ブック全体の更新であれば、ピボットテーブルを指定する必要がないので、簡単です。
更新したくないピボットテーブルがなければ、「ActiveWorkbook.RefreshAll」で、ブック全体を更新しましょう。
この記事では、VBAでピボットテーブルを更新する方法について、ご紹介しました。
ピボットテーブルを更新する種類は、次の2つがあります。
- 特定のピボットテーブルのみを更新
- ブック全体のピボットテーブルを更新
他のピボットテーブルは更新したくない、というのがなければ、「ブック全体のピボットテーブルを更新」する方が簡単です。
参考になればと思います。最後までご覧くださいまして、ありがとうございました。