対象:Excel2007, Excel2010, Excel2013
「listobjects 列数」
という検索で、このサイト・インストラクターのネタ帳へのアクセスがありました。
テーブルを表すListObjectオブジェクトの列数を取得するには、Excel VBAでどのようなコードを書けばいいのか探している方による検索でしょう。
[スポンサードリンク]
アクティブシートの一つ目のテーブルの列数を取得するサンプルマクロ
参考になりそうな簡単なマクロをご紹介しておきます。
Sub 列数を取得する()
MsgBox ActiveSheet.ListObjects(1).ListColumns.Count
End Sub
MsgBox ActiveSheet.ListObjects(1).ListColumns.Count
End Sub
テーブルが存在するワークシートがアクティブな状態で、上記のマクロを実行すると、アクティブシート上の1つ目のテーブルの列数がメッセージボックスに表示されます。
テーブルの列数を取得するオブジェクトモデル
上記のマクロで利用しているオブジェクトモデルを階層図にすると、下図のようなイメージです。

ListObjectsコレクションオブジェクトのデフォルトプロパティの引数に「1」を指定することで1つ目のテーブルを表すListObjectを取得して、

ListObjectのListColumnsプロパティでListColumnsコレクションオブジェクトを取得して、

ListObjectsコレクションオブジェクトのCountプロパティで、テーブルの列数を取得しています。

最終更新日時:2019-07-31 06:04
[スポンサードリンク]
Home » エクセルマクロ・Excel VBAの使い方 » ListObjectオブジェクト » VBAでテーブル・ListObjectの列数を取得する
『インストラクターのネタ帳』では、2003年10月からMicrosoft Officeの使い方などを紹介し続けています。










