
Excel VBAでピボットテーブルの最終行を取得することで、動的なデータ処理や自動化を行う際に便利です。例えば、データをフィルターした後に結果の範囲を特定したい場合などに活用します。
使い方や注意点など、サンプルコードをもとに具体的に解説します。
📌 「これ、自動化できたらラクなのに…」と思ったこと、ありませんか?
実はその作業、Excelマクロで簡単に自動化できるかもしれません。
「でもマクロって難しそう…」という方のために、完全初心者向けの入門記事をご用意しました!
👇実務で“そのまま使える”テンプレ付きで、コピペするだけ!
初心者向けエクセルマクロの作り方を解説|コピペOK実務テンプレ付き
Excel VBA ピボットテーブル 最終行取得の利用
以下のようなシーンで利用されます。
1.ピボットテーブルのデータ範囲を特定し、新しいデータを追加する際の基準にしたい。
2.最終行のデータに基づいてグラフを作成したり、他の処理を行いたい。
3.動的なレポートを作成するために、最終行を基準にしたい。
pivotTable.TableRange2.Rows.Count ピボットテーブルの最終行を取得
1.ピボットテーブルが更新されると、最終行が変わることがあるため、コードを実行する前に最新の状態に更新しておくことが重要です。
2.ピボットテーブルの名前やシート名を正確に指定する必要があります。
Excel VBA ピボットテーブル 最終行取得のサンプルコード
Option Explicit
Sub GetPivotTableLastRow()
Dim ws As Worksheet
Dim pivotTable As pivotTable
Dim lastRow As Long
' ピボットテーブルがあるシートを指定
Set ws = ThisWorkbook.Sheets("ピボットシート")
' ピボットテーブルを指定
Set pivotTable = ws.PivotTables("SamplePivotTable")
' ピボットテーブルの最終行を取得
lastRow = pivotTable.TableRange2.Rows.Count
MsgBox "ピボットテーブルの最終行は: " & lastRow
End Sub
1.シートとピボットテーブルの指定
Set ws = ThisWorkbook.Sheets("Sheet1") で、ピボットテーブルがあるシートを指定します。
Set pivotTable = ws.PivotTables("PivotTable1") で、対象のピボットテーブルを指定します。
2.最終行を取得
pivotTable.TableRange2.Rows.Count で、ピボットテーブルのデータ範囲の行数を取得し、最終行の位置を特定します。
自分の実力を客観的にチェックしたい…。そんな方のために、自分に合ったスタート地点がわかる無料のExcelVBAベーシック選択問題集をご用意しました。
TableRange2 ピボットテーブルの完全なデータ範囲(集計値とフィールドラベルの両方)を取得します。最終行が含まれている範囲を正確に知りたいときに使用します。最終行を使ってさらにデータ処理を行う場合には、この情報を基にコードを追加することができます。
操作方法:1.●●●をクリック(スマホはタップ)で答え表示。2.答えをクリック(スマホはタップ)で●●●表示。1⇔2を繰り返すことで、記憶を定着できます。
1.シートとピボットテーブルの指定
Set ws = ThisWorkbook.Sheets("Sheet1") で、ピボットテーブルがあるシートを指定します。
Set pivotTable = ws.●●●("PivotTable1") で、対象のピボットテーブルを指定します。
2.最終行を取得
pivotTable.●●●.Rows.Count で、ピボットテーブルのデータ範囲の行数を取得し、最終行の位置を特定します。
「Excel VBAで自動化するコードのベースが習得できる解説書」
Excel VBAエキスパートベーシックとスタンダード、どちらを選べばいいか判断が難しい…。そんな方のために、自分に合ったスタート地点がわかる無料のExcelVBAベーシック選択問題集を用意しました。