Sub sample()
Dim ws1 As Worksheet, ws2 As Worksheet, r As Range, c As Range, ff As String, myStatus As String
Set ws1 = Workbooks("Example1.xls").Sheets("Sheet1")
Set ws2 = Workbooks("Example2.xls").Sheets("Sheet1")
For Each r In ws2.Range("b2",ws2.Range("b" & Rows.Count).End(xlUp))
Set c = ws1.Columns("a").Find(r.Value,,,xlPart)
If Not c Is Nothing Then
ff = c.Address : MsgBox c.Address
Do
If UCase(c.Offset(,1).Value) Like "*HIGH" Then
myStatus = "Risk-High" : Exit Do
ElseIf UCase(c.Offset(,1).Value) Like "*Med" Then
myStatus = "Risk-Med"
ElseIf UCase(c.Offset(,1).Value) Like "*Low" Then
If myStatus <> "Risk-High" And myStatus <> "Risk-Med" Then
myStatus = "Risk-Low"
End If
End If
Set c = ws1.columns("a").FindNext(c)
Loop Until ff = c.Address
r.Offset(,6).Value = myStatus : myStatus = Empty
Else
MsgBox r.Value & " is not exist"
End If
Next
Set ws1 = Nothing
Set ws2 = Nothing
End Sub
Sub sample()
Dim ws1 As Worksheet, ws2 As Worksheet, r As Range, c As Range, ff As String, myStatus As String
Set ws1 = Workbooks("Example1.xls").Sheets("Sheet1")
Set ws2 = Workbooks("Example2.xls").Sheets("Sheet1")
For Each r In ws2.Range("b2",ws2.Range("b" & Rows.Count).End(xlUp))
Set c = ws1.Columns("a").Find(r.Value,,,xlPart)
If Not c Is Nothing Then
ff = c.Address : MsgBox c.Address
Do
If Trim(UCase(c.Offset(,1).Value)) Like "*HIGH" Then
myStatus = "Risk-High" : Exit Do
ElseIf Trim(UCase(c.Offset(,1).Value)) Like "*MED" Then
myStatus = "Risk-Med"
ElseIf Trim(UCase(c.Offset(,1).Value)) Like "*LOW" Then
If myStatus ="" Then myStatus = "Risk-Low"
End If
Set c = ws1.columns("a").FindNext(c)
Loop Until ff = c.Address
r.Offset(,6).Value = myStatus : myStatus = Empty
Else
MsgBox r.Value & " is not exist"
End If
Next
Set ws1 = Nothing
Set ws2 = Nothing
End Sub