The following should do the trick. If case is unimportant remove the part
or change it to False
Code:
Sub FindAndReplaceEAwith2()
Dim oRng As Range
Dim oWord As Range
Set oRng = ActiveDocument.Range
With oRng.Find
Do While .Execute(FindText:="ea", MatchCase:=True)
Set oWord = oRng.Words(1)
If oWord.Characters.Last = Chr(32) Then
oWord.End = oWord.End - 1
End If
If Not oRng.Start = oWord.Start Then
If Not oRng.End = oWord.End Then
oRng.Select
oRng.Text = 2
oRng.Collapse 0
End If
End If
Loop
End With
lbl_Exit:
Set oRng = Nothing
Set oWord = Nothing
Exit Sub
End Sub