In Loop Terms
Dim vMatch As Variant
Dim rngCell As Range
Dim wsSource As Worksheet
Set wsSource = Sheets("PAN")
For Each rngCell In Range("H4:H60")
vMatch = Application.Match(Cells(rngCell.Row, "B"), wsSource.Range("K1:K50"), 0)
If IsNumeric(vMatch) Then
rngCell.Value = Application.Index(wsSource.Range("I1:I50"), vMatch)
Else
rngCell.Value = "HA"
End If
Next rngCell
Set wsSource = Nothing
However, an alternate route...somewhat shorter
With Range("H4:H60")
.FormulaR1C1 = "=IF(ISNA(MATCH(RC2,PAN!R1C11:R50C11,0)),""HA"",INDEX(PAN!R1C9:R50C9,MATCH(RC2,PAN!R1C11:R50C11,0)))"
.Value = .Value 'override formulae with value
End With
Bookmarks