I've tested the codes below and they seem to work correctly:
Code:
Case InStr(oRngEval, " " & ChrW(45) & " ") = 1, InStr(oRngEval, " " & ChrW(8211) & " ") = 1
Code:
Case InStr(oRngEval, " " & ChrW(45) & " ") = 1 Or InStr(oRngEval, " " & ChrW(8211) & " ") = 1
Try putting either of them instead of the 'misbehaving' line.