Excel VBAの Findは、範囲内で特定の値を検索し、その値が見つかった行番号を取得することができます。具体的な使い方や、注意点やサンプルコードを紹介します。
以下のようなシーンで利用されます。
・特定の値を持つ行の行番号を取得して、その行に対する処理を行いたい場合に使用します。
Findが Nothing を返す場合は、検索対象が見つからなかったことを意味します。見つかった場合、Rowを使用してそのセルの行番号を取得します。
Option Explicit
Sub FindRowNumber()
Dim searchValue As String
Dim foundCell As Range
Dim rowNum As Long
' 検索する値を設定します
searchValue = "Banana"
' 範囲を指定して検索
Set foundCell = Range("A1:A10").Find(What:=searchValue, LookIn:=xlValues, LookAt:=xlWhole)
' 見つかったセルがあるかどうかを確認します
If Not foundCell Is Nothing Then
' 見つかった場合の処理
rowNum = foundCell.Row
MsgBox "Row number: " & rowNum
Else
' 見つからなかった場合の処理
MsgBox "Not found"
' ここに見つからなかった場合の追加の処理を記述します
End If
End Sub
サンプルコードは、セル範囲 "A1:A10" 内で Banana という値を検索し、見つかった場合にそのセルの行番号を取得して表示します。見つからなかった場合は Not found というメッセージボックスを表示します。
Excel VBAでの効果的なデータ検索Findメソッドの活用方法
毎日のルーチン作業をExcel VBAで自動化し、時間を有効活用しませんか?Excel VBAエキスパート資格取得問題集を活用して資格取得、そして効率的な仕事を実現しましょう!
VBAエキスパート資格は、日常業務でExcelを多用し、手動作業を減らしたいと考えている方には価値あるものです。
ExcelVBAエキスパートベーシック
仕事の効率をあげるためにExcelVBAを利用する人が対象の問題集です。
ExcelVBAエキスパートスタンダード
ExcelVBAの開発を仕事にする人が対象の問題集です。
Excel VBA エキスパート資格について知りたい方は、下記「Excel VBAスキルアップを目指すなら知っておきたいVBAエキスパート」をご確認ください。
ExcelVBAの学習方法で効果的な学び方を知りたい方は、下記「Excel VBA初心者のための効果的な学習ガイド」をご確認ください。