ExcelVBA データを要約して見やすく整理するピボットテーブルを自動作成する

 

ExcelVBA ピボットテーブルは、データを要約して見やすく整理するための機能です。ピボットテーブルを自動作成することで、作業の効率化が図れます。大量のデータを分析する際にとても便利です。

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

 

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

 

 

Excel VBA ピボットテーブルの利用

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

1.毎月の売上データを部門ごとに自動集計する

2.顧客データを地域や年齢層別に分析する

3.在庫データをカテゴリ別に要約する

使い方

1.準備:ピボットテーブルを作成したいデータがExcelシートに整列されていることを確認します(列に見出しがあること)

2.VBAコードを使用してピボットテーブルを作成し、必要な項目を指定します。

 

ポイント

1.データに空白があると、正しく集計されないことがあります。

2.ソースデータが変更された場合、ピボットテーブルを更新する必要があります。

3.集計や分析の要件によって、ピボットテーブルのフィールド設定を適切に調整する必要があります。

 

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

 

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

 

 

Option Explicit

Sub CreatePivotTable()
    Dim ws As Worksheet
    Dim dataRange As Range
    Dim pivotWs As Worksheet
    Dim pivotCache As pivotCache
    Dim pivotTable As pivotTable

    ' ソースデータがあるシートと範囲を指定
    Set ws = ThisWorkbook.Sheets("データシート")
    Set dataRange = ws.Range("A1").CurrentRegion

    ' ピボットテーブルを作成するシートを指定
    Set pivotWs = ThisWorkbook.Sheets.Add
    pivotWs.Name = "ピボット集計"

    ' ピボットキャッシュの作成
    Set pivotCache = ThisWorkbook.PivotCaches.Create( _
        SourceType:=xlDatabase, _
        SourceData:=dataRange)

    ' ピボットテーブルを作成
    Set pivotTable = pivotCache.CreatePivotTable( _
        TableDestination:=pivotWs.Range("A1"), _
        TableName:="SamplePivotTable")

    ' ピボットテーブルにフィールドを追加
    With pivotTable
        .PivotFields("年月").Orientation = xlRowField
        .PivotFields("商品").Orientation = xlColumnField
        .PivotFields("売上金額").Orientation = xlDataField
    End With

    MsgBox "ピボットテーブルを作成しました!"
End Sub

1.データシートと範囲を指定
Set dataRange = ws.Range("A1").CurrentRegion でソースデータの範囲を指定します。

2.ピボットキャッシュの作成
PivotCaches.Create を使用して、ピボットテーブル用のキャッシュを作成します。

3.ピボットテーブルの作成
CreatePivotTable メソッドで新しいピボットテーブルを作成します。

4.フィールドを追加
PivotFields プロパティで、行、列、値のフィールドを設定します。

このコードを実行すると、指定したデータ範囲を基に自動でピボットテーブルが作成されます。フィールド設定は分析したい項目に応じて変更してください。

ピボットテーブルを使用すると、複雑なデータを簡単に要約できます。

記憶定着問題集

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

①データシートと範囲を指定 Set dataRange = ws.Range("A1").●●● でソースデータの範囲を指定します。

②ピボットキャッシュの作成 ●●● を使用して、ピボットテーブル用の ●●●を作成します。

③ピボットテーブルの作成 ●●● メソッドで新しいピボットテーブルを●●●します。

④フィールドを追加 ●●● プロパティで、●●●のフィールドを設定します。

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