Home » ExcelVBA Rangeオブジェクト » VBAで選択されている列番号・行番号を取得する

VBAで選択されている列番号・行番号を取得する

対象:Excel2003, Excel2007, Excel2010

「選択されている列番号を知るプロパティ」
という検索が行われていました。

ExcelのVBA(Visual Basic for Applications)で、選択されているセルの列番号を取得する方法を探している方による検索です。
以下のようなコードを試したんじゃないかと想像します。

 Sub 選択されているセルの列番号を取得()
  MsgBox Selection.Column
 End Sub

複数のセルが選択されている場合、これではアウトです。
Selection.Columnでは、一つの列番号しか返されません。

選択されている列番号を知ってどうしたいのかがわかりませんが、以下のマクロが参考になるのではないでしょうか。

[スポンサードリンク]

選択されているセルの列番号を取得するサンプルマクロ

以下のマクロを実行すると、選択されているすべての列番号をメッセージボックスに表示してくれます。

Sub 選択されているセルのすべての列番号を取得する()
 Dim rng As Range
 For Each rng In Selection.Columns
  MsgBox rng.Column
 Next
End Sub

RangeオブジェクトのColumnsプロパティで、指定されたセル範囲の列を表すRangeオブジェクトが返されるので、そのRangeオブジェクトに対してループを回してやると、選択されているすべての列番号が取得できるのです。

選択されているセルの行番号を取得するサンプルマクロ

すべての行番号を調べるのなら、以下のようなマクロです。

Sub 選択されているセルのすべての行番号を取得する()
 Dim rng As Range
 For Each rng In Selection.Rows
  MsgBox rng.Row
 Next
End Sub

最終更新日時:2021-06-02 12:31

[スポンサードリンク]

Home » ExcelVBA Rangeオブジェクト » VBAで選択されている列番号・行番号を取得する

「ExcelVBA Rangeオブジェクト」の記事一覧

検索


Copyright © インストラクターのネタ帳 All Rights Reserved.

.