Sub gpeFindNext()
Dim Sh As Worksheet, Rng As Range, sRng As Range, Cls As Range
Dim Timer_ As Double, MyAdd As String
Timer_ = Timer
Set Sh = ThisWorkbook.Worksheets("DATA FOR REPLACE")
Sheets("REPORT").Select
Set Rng = Range([f4], [f4].End(xlDown))
For Each Cls In Sh.Range(Sh.[a4], Sh.[a65432].End(xlUp))
Set sRng = Rng.Find(Cls.Value, , xlValues, xlWhole)
If Not sRng Is Nothing Then
MyAdd = sRng.Address
Do
sRng.Offset(, 1).Value = Cls.Offset(, 1).Value
Set sRng = Rng.FindNext(sRng)
Loop While Not sRng Is Nothing And sRng.Address <> MyAdd
End If
Next Cls
MsgBox Timer - Timer_
End Sub