ExcelVBA ピボットテーブルのデータが変更されたときに自動更新する方法

 

ExcelVBA ピボットテーブルのデータが変更されたとき、手動で「更新」ボタンを押さずに、VBAを使って自動でピボットテーブルを更新することができます。効率的に正確なデータを分析できるようになります。

使い方や注意点など、サンプルコードをもとに具体的に解説します。

 

「VBAスキルを証明できれば、社内評価アップにつながるかもしれません
👉 VBAを学んで社内評価を上げる方法はこちら

 

 

Excel VBA ピボットテーブル自動更新の利用

以下のようなシーンで利用されます。

1.データの入力や編集が頻繁に行われるシートを使用している。

2.レポート作成や分析において、正確な集計が必要

3.毎回手動で更新するのが面倒な場合、自動化をして作業効率を向上させたい。

Excel VBA ピボットテーブル自動更新|使い方とポイント

使い方

pivotTable.RefreshTable でピボットテーブルの更新処理を入れます。

 

ポイント

1.ピボットテーブルの名前やシート名は、環境に応じて変更する必要があります。

2.ピボットテーブルのデータソースが変更された場合は、データソース範囲も自動で更新するコードが必要です。

3.ピボットテーブルを頻繁に更新する場合、パフォーマンスに影響が出ることがあります。

 

Excel VBA ピボットテーブル自動更新のサンプルコード

 

「VBAスキルを証明できれば、社内評価アップにつながるかもしれません
👉 VBAを学んで社内評価を上げる方法はこちら

 

 

Option Explicit

Sub UpdatePivotTable()
    Dim ws As Worksheet
    Dim pivotTable As pivotTable

    ' ピボットテーブルがあるシートを指定
    Set ws = ThisWorkbook.Sheets("ピボットシート")
    ' ピボットテーブルを指定
    Set pivotTable = ws.PivotTables("SamplePivotTable")

    ' ピボットテーブルを更新
    pivotTable.RefreshTable

    MsgBox "ピボットテーブルが更新されました!"
End Sub

1.シートとピボットテーブルの指定
Set ws = ThisWorkbook.Sheets("Sheet1") で、ピボットテーブルがあるシートを指定します。
Set pivotTable = ws.PivotTables("PivotTable1") で、更新するピボットテーブルを指定します。

2.ピボットテーブルの更新
pivotTable.RefreshTable でピボットテーブルを更新します。

3.通知メッセージ
更新が完了した後にメッセージボックスを表示して、ユーザーに通知します。

このコードを自動化することで、たとえばワークブックを開いたときに自動で更新するように設定することも可能です。データが大きい場合は、複数のピボットテーブルを一度に更新するコードを書くこともできます。

 

記憶定着問題集

操作方法:1.●●●をクリック(スマホはタップ)で答え表示。2.答えをクリック(スマホはタップ)で●●●表示。1⇔2を繰り返すことで、記憶を定着できます。

1.シートとピボットテーブルの指定
Set ws = ThisWorkbook.Sheets("Sheet1") で、ピボットテーブルがあるシートを指定します。
Set pivotTable = ws.●●●("PivotTable1") で、更新するピボットテーブルを指定します。

2.ピボットテーブルの更新
pivotTable.●●● でピボットテーブルを更新します。

3.通知メッセージ
更新が完了した後にメッセージボックスを表示して、ユーザーに通知します。

「VBAスキルを証明できれば、社内評価アップにつながるかもしれません