「vba listobjects 見出し行」
という検索で、このサイト・インストラクターのネタ帳へのアクセスがありました。
Excel VBA(Visual Basic for Applications)で、テーブルの見出し行に対して何らかの処理を行うのにどのようなコードを書けばいいのかを探していた方による検索でしょうか。
「vba listobjects 見出し行」
という検索キーワードだけでは詳細がわかりませんので、ここでは参考になりそうなテーブルの見出し行を取得するサンプルマクロをご紹介しておきます。
テーブルの見出し行を取得するサンプルマクロ
以下のコードを実行すると、アクティブシートの1つ目のテーブルの、
見出し行のアドレス
見出し行の行番号
がそれぞれメッセージボックスに表示されたあとに、見出し行が選択されます。
With ActiveSheet.ListObjects(1).HeaderRowRange
MsgBox .Address(False, False)
MsgBox .Row
.Select
End With
End Sub
サンプルマクロの解説
上記のマクロで利用しているオブジェクトモデルの階層関係は下図のとおりです。
ListObjectsコレクションオブジェクトの単一メンバーである、ListObjectオブジェクトのHeaderRowRangeプロパティで、見出し行を取得できます。
注目すべきは、ListObject.HeaderRowRangeプロパティで返されるのは、Excel VBAを使い慣れた方にはお馴染みの、Rangeオブジェクトであるということでしょう。
上記のマクロでは、RangeオブジェクトのAddressプロパティを使ってセルのアドレスを取得して、
MsgBox .Address(False, False)
RangeオブジェクトのRowプロパティを使って行番号を取得して、
MsgBox .Row
RangeオブジェクトのSelectメソッドで選択を行っています。
.Select
最終更新日時:2019-10-28 12:59
Home » エクセルマクロ・Excel VBAの使い方 » ListObjectオブジェクト » ListObjectの見出し行を取得する-HeaderRowRange