Excel VBA(Visual Basic for Applications)の、RowsとRowの違いについて記事を書きました。
同じようなことで、ColumnsとColumnの違いを疑問に感じる方もいらっしゃいます。
「columns column 違い vba」
という検索キーワードで、このサイト・インストラクターのネタ帳へのアクセスも、やっぱりあります。
ColumnプロパティとColumnsプロパティの違い
結論からいうと、
Columnは
列番号を表す整数を返すプロパティ
Columnsは
列を表すRangeオブジェクトを返すプロパティ
です。
Rowプロパティが行番号を返し、Rowsプロパティが行を表すRangeオブジェクトを返すのと同じ関係です。
ColumnとColumnsの違いをオブジェクトブウラウザーで確認する
オブジェクトブラウザーで、RangeオブジェクトのColumnプロパティの詳細ペインを確認すると、下図のように「As Long」と整数を返すことが明記され、
ApplicationオブジェクトのColumnsプロパティの詳細ペインを確認すると、下図のように「As Range」とRangeオブジェクトを返すことが明記されています。
書かれるオブジェクト式の特徴
ColumnsプロパティはRangeオブジェクトを返すプロパティですから、「Columns」の直後にはRangeオブジェクトに用意されているプロパティが続くことがよくあります。
これに対してColumnプロパティは、整数値を返しますから「.Column」の直後にオブジェクト式が続くことはあり得ません。
- Newer:VBAでグラフをセルに合わせて移動やサイズ変更をしないように
- Older:CurrentRegionの意味
Home » Excel VBA Rangeオブジェクト » 行・列を表すRange » Excel VBAのColumnsとColumnの違い