
ピボットテーブルで「行ラベル」に複数のフィールドを追加することで、階層構造を作成し、データを詳細に分析することができます。Excel VBAを使用すると、この操作を自動化できるため、作業の効率が上がります。
使い方や注意点など、サンプルコードをもとに具体的に解説します。
📌 「これ、自動化できたらラクなのに…」と思ったこと、ありませんか?
実はその作業、Excelマクロで簡単に自動化できるかもしれません。
「でもマクロって難しそう…」という方のために、完全初心者向けの入門記事をご用意しました!
👇実務で“そのまま使える”テンプレ付きで、コピペするだけ!
初心者向けエクセルマクロの作り方を解説|コピペOK実務テンプレ付き
目次
Excel VBA ピボットテーブル「行ラベル」に複数フィールドを追加する利用
以下のようなシーンで利用されます。
1.部署別、年別、月別などの階層的なデータを分析したい。
2.複数のカテゴリで集計したデータを簡単に表示したい。
3.定期的に複数の行ラベルを追加する必要があるときに、自動化したい。
Excel VBA ピボットテーブル「行ラベル」に複数フィールドを追加|使い方とポイント
PivotFieldsで行ラベルに複数のフィールドを追加を入れます。
1.フィールド名は、ピボットテーブルのデータソースにある列名と一致させる必要があります。
2.ピボットテーブルの名前やシート名は、環境に応じて適宜変更してください。
3.ピボットテーブルのデータソースが正確であることを確認してください。そうしないと、エラーが発生する可能性があります。
Excel VBA ピボットテーブル「行ラベル」に複数フィールドを追加するサンプルコード
自分の実力を客観的にチェックしたい…。そんな方のために、自分に合ったスタート地点がわかる無料のExcelVBAベーシック選択問題集をご用意しました。
Option Explicit
Sub AddMultipleRowLabels()
Dim ws As Worksheet
Dim pivotTable As pivotTable
' ピボットテーブルがあるシートを指定
Set ws = ThisWorkbook.Sheets("ピボットシート")
' ピボットテーブルを指定
Set pivotTable = ws.PivotTables("SamplePivotTable")
' ピボットテーブル初期化
pivotTable.ClearTable
' 行ラベルに複数のフィールドを追加
pivotTable.PivotFields("年月").Orientation = xlRowField
pivotTable.PivotFields("商品").Orientation = xlRowField
MsgBox "複数の行ラベルが追加されました!"
End Sub
1.シートとピボットテーブルの指定
Set ws = ThisWorkbook.Sheets("Sheet1") で、ピボットテーブルがあるシートを指定します。
Set pivotTable = ws.PivotTables("PivotTable1") で、操作するピボットテーブルを指定します。
2.行ラベルの設定
pivotTable.RowFields.Clear で既存の行ラベルをクリアします。
pivotTable.PivotFields("フィールド名").Orientation = xlRowField で、複数のフィールドを行ラベルに追加します。
フィールドの追加順序によって、ピボットテーブルの階層が決まります。例えば、「部門」→「年」→「月」の順に追加すると、部門別に年と月が表示される階層構造になります。フィールド名は、必ず正しい列名を指定するようにしましょう。間違った名前を指定するとエラーが発生します。
操作方法:1.●●●をクリック(スマホはタップ)で答え表示。2.答えをクリック(スマホはタップ)で●●●表示。1⇔2を繰り返すことで、記憶を定着できます。
1.シートとピボットテーブルの指定
Set ws = ThisWorkbook.Sheets("Sheet1") で、ピボットテーブルがあるシートを指定します。
Set pivotTable = ws●●●("PivotTable1") で、操作するピボットテーブルを指定します。
2.行ラベルの設定
pivotTable●●● で既存の行ラベルをクリアします。
pivotTable.●●●("フィールド名")●●● = xlRowField で、複数のフィールドを行ラベルに追加します。
「Excel VBAで自動化するコードのベースが習得できる解説書」
Excel VBAエキスパートベーシックとスタンダード、どちらを選べばいいか判断が難しい…。そんな方のために、自分に合ったスタート地点がわかる無料のExcelVBAベーシック選択問題集を用意しました。