You haven't selected anything, so a search in Selection.Range will not find anything.
Try the following:
Code:
Sub findM()
Dim strfind() As Variant
Dim strreplace() As Variant
Dim i As Integer
strfind = Array("cE", "km")
strreplace = Array("c?\u", "?")
For i = 0 To UBound(strfind)
Selection.HomeKey wdStory
With Selection.Find
.ClearFormatting
.Replacement.ClearFormatting
.Text = strfind(i)
.Format = True
.Forward = True
.MatchAlefHamza = False
.MatchWildcards = False
.MatchCase = True
.MatchWholeWord = False
.Replacement.Text = strreplace(i)
.Execute Replace:=wdReplaceAll
End With
Next i
End Sub