値を検索 - Findメソッド

Sheet1の列Aで「123456」を検索した後Sheet1をアクティブにし、そのセルを左上隅にスクロールします。

Sub 値を検索≪Findメソッド≫()
  Dim Result
  Result = FindRow(Sheet1.Columns(1), 123456)
  If IsEmpty(Result) Then
    MsgBox "該当するデータはありません", vbExclamation
  Else
    MsgBox Result & "行目に存在します"
    Application.Goto Sheet1.Cells(Result, 1), True
  End If
End Sub

Function FindRow(r As Range, s As String)
  On Error Resume Next
  FindRow = r.Find(s).Row
End Function

目的の値が見つからない場合は実行時エラーが発生します。そのためFindRow関数を作成し、エラー時は空の値を返すことで対処します。