However, if in rare cases you have an instance of punctuation immediately
following another punctuation (say, a close quote immediately followed by an
open parentheses), then the parentheses will be struck out. So I added an
additional step which performs the same check on Selection.Words (i+1) as on
Selection.Words (i).
This is not elegant (and probably someone could come up with a more
economical way of doing this), but in my tests of it, it works.
Dim i As Long
For i = 1 To Selection.Words.Count Step 5
X = True
Select Case Selection.Words(i).Characters.First
Case Chr(13), ".", ",", """", ":", "!", "?", " ", "-", _
")", "(", Chr(30), Chr(151), Chr(147), Chr(148)
X = False
End Select
If X = True Then
Selection.Words(i).Font.StrikeThrough = True
Else
X = True
Select Case Selection.Words(i + 1).Characters.First
Case Chr(13), ".", ",", """", ":", "!", "?", " ", "-", _
")", "(", Chr(30), Chr(151), Chr(147), Chr(148)
X = False
End Select
If X = True Then
Selection.Words(i + 1).Font.StrikeThrough = True
Else
Selection.Words(i + 2).Font.StrikeThrough = True
End If
End If
Next i