我希望有一个可以在WORD 2003上运行的宏代码。我有以下文字:
这是从这里继续的句子的开始。
我想将大写文字加粗:
这是从这里继续的句子的开始。
据我所知,如果粗体文本的文本格式为“AllCaps”,那么这将是微不足道的,但事实并非如此。它是使用大写锁定创建的。
有什么想法吗?我可以了解它,但我无法弄清楚如何在VBA代码中添加复杂的查找和替换。
答案 0 :(得分:5)
您想要的是Regular Expressions,其Word provides位于其查找功能的高级部分。
以下是一个快速示例:
Public Sub Test()
With ActiveDocument.Content.Find
.Text = "<[A-Z]{1,}>"
.MatchWildcards = True
.MatchCase = True
.Replacement.Font.Bold = True
.Execute Replace:=wdReplaceAll, Forward:=True, Wrap:=wdFindContinue
End With
End Sub
“的百分比抑制率A-Z] {1,}&gt;” 中表示以下内容:
你需要处理的一个警告是单字母单词 - 我和A将用这种模式方案加粗。您可能会发现创建一个匹配整个大写单词组的模式更容易,但您仍然需要找到一种方法来处理前导或尾随大写单字母单词。
如果您有任何疑问,请发表评论,我可以尝试进一步解释。