I didn't check this on footnotes, but it's much faster:
For Each myRng In ActiveDocument.StoryRanges
Do
With myRng
Do
With .Find
.MatchWildcards = True
.text = "[,;.:?]" & "[«‹›»" & Chr(39) & Chr(34) & Chr(146) & Chr(148) & "]"
.Replacement.text = ""
.Wrap = wdFindStop
.Execute
End With
If .Find.found Then
myRng.InsertBefore myRng.Characters.Last
myRng.Characters.Last.Delete
Else: Exit Do
End If
myRng.Collapse 0
Loop
End With
Set myRng = myRng.NextStoryRange
Loop Until myRng Is Nothing
Next myRng
|