Try this:
Sub test()
Dim FirstAddress, c As Range
With Worksheets(1).Range("a1:a500") 'Searches Column A, rows 1-500
Set c = .Find("2", LookIn:=xlValues, Lookat:=xlWhole) '(looks for
"2")
If Not c Is Nothing Then
FirstAddress = c.Address
Do
MsgBox c.Address & ": " & c.Value & " Row: " & c.Row & "
Col: " & c.Column
Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address <> FirstAddress
End If
End With
End Sub