我有一个查找和替换宏,当缺少一个句子时,它在一个句子的结尾和另一个句子的开头之间添加一个空格。当我在word中移动句子时,有时会发生这种情况。
我注意到,如果光标位于标点符号的任意一侧,宏就看不到查找模式,也不会对其进行修复。我认为这是因为查找和替换从光标位置开始搜索。有没有办法调整代码,让它也能找到它们?
我知道我可以告诉宏从头开始,但我更希望它将光标留在它的当前位置,特别是当我在一个长文档的末尾运行它时。
Sub AddOneSpaceBetweenSentences()
' AddOneSpaceBetweenSentences Macro
'
With Selection.Find
.Forward = True
.Text = "(?)([.\?\!])([A-Z])"
.ClearFormatting
.Replacement.Text = "\1\2 \3" 'there is a space between \2 and \3
.MatchWildcards = True
.Wrap = wdFindContinue
.Execute Replace:=wdReplaceAll
End With
End Sub
https://stackoverflow.com/questions/54813701
复制相似问题