動作検証バージョン:Windows 11 Home + 64bit Excel バージョン 2505(ビルド18827.20128クイック実行)
「vba cells.find 座標を取得」
といった検索キーワードでアクセスがありました。
「座標」と表現されているのは、セル番地・セルアドレスのことでしょうか。
だとすれば、RangeオブジェクトのFindメソッドを使って検索を行い、見つかったセルのセル番地を取得する方法を探していらしたのでしょう。
[スポンサードリンク]
Cells.Findで見つかったセルの座標・セル番地を取得するサンプルマクロ
アクティブシートのいずれかのセルに「北海道」と入力しておいて以下のExcelマクロを実行してください。
Sub 北海道を検索してセル番地を取得する()
MsgBox Cells.Find(What:="北海道").Address(False, False)
End Sub
MsgBox Cells.Find(What:="北海道").Address(False, False)
End Sub
Cells.Findの戻り値はRange
既にご紹介しているとおり、Range.Findメソッドの戻り値は、セルを表すRangeオブジェクトです。
ですから、Rangeオブジェクトに用意されているAddressプロパティを使えば、セル番地を取得できます。
上記のサンプルマクロでは、Range.Addressプロパティの2つの引数にFalseを指定することで、相対参照形式でセル番地を取得しています。
[スポンサードリンク]
- Newer:Word VBAのFindで見つかった文字が何文字目かを取得する
- Older:Access VBAでWordを終了する
Home » Excel VBA Rangeオブジェクト » セル検索 » Cells.Findで見つかったセルの座標・セル番地を取得する