it seemed to me that you wanted to test WHOLE words and not just character strings. I edited you code slightly adding a call to a proc (MWE_WordCount2) I wrote a while ago that parses a test string for whole words and returns the # found and an integer array of start/end locations. I then tested the target string against each whole word found in the cell. Seems to work.
Sub MakeWordBold2()
Dim strSearch As String
Dim searchRng As Range
Dim i As Long
Dim cel As Range
Dim LastRow As Integer
Dim LastCol As Integer
Dim Found As Boolean
Dim Words(25, 2) As Integer, NW As Integer
Application.ScreenUpdating = False
LastRow = ActiveSheet.UsedRange.Rows.Count
' LastCol = (ActiveSheet.UsedRange.Columns.Count) - 1
LastCol = (ActiveSheet.UsedRange.Columns.Count)
Set searchRng = Range(Cells(1, 1), Cells(LastRow, LastCol))
strSearch = InputBox("Please enter the text to make bold:", "Bold Text")
If strSearch = "" Then
Exit Sub
End If
For Each cel In searchRng
With cel
.Font.Bold = False
Call MWE_WordCount2(.Text, NW, Words)
For i = 1 To NW
If Mid(.Text, Words(i, 1), Words(i, 2) - Words(i, 1) + 1) = strSearch _
Then
.Characters(Words(i, 1), Len(strSearch)).Font.Bold = True
Found = True
End If
Next i
End With
Next cel
If Found = False Then
MsgBox "No match found.", vbOKOnly
Else
MsgBox "Complete.", vbOKOnly
End If
Application.ScreenUpdating = True
End Sub