我希望以下代码更直观,因此我需要为“Dr.”等缩写添加排除项或“N.A.S.A.”。此外,它不应该为带小数点的数字添加空格。如何手动添加特定排除项或通配符排除项?
Sub TwoSpaces()
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = "([.\?\!]) {1,}"
.Replacement.Text = "\1 "
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchWildcards = True
End With
Selection.Find.Execute Replace:=wdReplaceAll
End Sub
我也不想将其应用于论文的某些部分,例如参考书目部分。我是否可以使用以下代码将宏标记为“不检查拼写和语法”的区域:
Selection.NoProofing = True
答案 0 :(得分:0)
你的解决方案已经忽略了小数,因为它寻找一个他们不会拥有的单个空格,而对于参考书目,你可以随后更新该字段,并且添加的空格将消失。
留下'博士'之类的东西和'N.A.S.A。'
我认为不可能排除已经关闭打样的区域。相反,您是否尝试单步执行查找结果并检查每个结果?听起来你会有很多像这样的排除,我不认为修改搜索字符串将是处理它们的最佳方式。
以下是一些C#代码示例:
range.Find.MatchWildcards = true;
range.Find.Text = ([.\?\!]) {1,}";
while (range.Find.Execute())
{
// check each find result: range.Text
}