The code below will do what you want.
Option Explicit
Sub AddMatch()
' 23 Dec 2017
Dim Ws As Worksheet
Dim Rng As Range ' the range to search in
Dim Fnd As Range
Dim Rl As Long ' last used row
Dim R As Long
Set Ws = ActiveSheet
Application.ScreenUpdating = False
With Ws
' determine last row in column B
Rl = .Cells(.Rows.Count, "B").End(xlUp).Row
' set the search range in column D, starting in row 2
Set Rng = Range(.Cells(2, 4), .Cells(Rl, 4))
For R = 2 To Rl ' start in row 2
If XlFind(Fnd, Rng, .Cells(R, 2).Value, LookAt:=xlPart) Then
.Cells(R, "C").Value = .Cells(R, "B").Value & " " & Left(Fnd.Value, 2)
End If
Next R
End With
Application.ScreenUpdating = True
End Sub
Function XlFind(Fnd As Range, _
Where As Range, _
ByVal What As Variant, _
Optional ByVal LookIn As Variant = xlValues, _
Optional ByVal LookAt As Long = xlWhole, _
Optional ByVal SearchBy As Long = xlByColumns, _
Optional ByVal StartAfter As Long, _
Optional ByVal Direction As Long = xlNext, _
Optional ByVal MatchCase As Boolean = False, _
Optional ByVal MatchByte As Boolean = False, _
Optional ByVal MatchPosition As Long, _
Optional ByVal After As Range, _
Optional ByVal FindFormat As Boolean = False) As Boolean
' 09 Dec 2017
' Fnd is a return range
' Settings LookIn, LookAt, SearchOrder, and MatchByte
' are saved each time the Find method is used
Dim Search As Range
Dim FirstFnd As Range
Set Search = Where
With Search
If After Is Nothing Then
If StartAfter Then
StartAfter = WorksheetFunction.Min(StartAfter, .Cells.Count)
Else
StartAfter = .Cells.Count
End If
Set After = .Cells(StartAfter)
End If
If MatchPosition > 1 Then LookAt = xlPart
Set Fnd = .Find(What:=What, After:=After, _
LookIn:=LookIn, LookAt:=LookAt, _
SearchOrder:=SearchBy, SearchDirection:=Direction, _
MatchCase:=MatchCase, MatchByte:=MatchByte, _
SearchFormat:=FindFormat)
If Not Fnd Is Nothing Then
Set FirstFnd = Fnd
Do
If MatchPosition Then
If InStr(1, Fnd.Value, What, vbTextCompare) = MatchPosition Then
Exit Do
Else
Set Fnd = .FindNext(Fnd)
End If
Else
Exit Do
End If
Loop While Not (Fnd Is Nothing) And Not (Fnd Is FirstFnd)
End If
End With
XlFind = Not (Fnd Is Nothing)
End Function
The function xlFind is a bit of an overkill here, but it is one which I could take from the shelf, and its extra capabilities may come in handy one day.