如何搜索完全粗体的段落?

问题描述 投票:0回答:1

我需要能够找到完全粗体的段落(例如副标题),但是我一直在努力找出答案或在网上找到很多帮助。我曾见过类似的问题,但尽管尝试使用看起来相关的部分,但回答却过于复杂,以至于我无法真正知道要复制的内容。

我的最终目标是,在找到一个完全粗体的段落后,删除紧随其后的字符(通常为空行)。

到目前为止,这是我的代码,使用MsgBox作为我的快速便捷测试,以查看搜索是否正常:

Dim para As Paragraph

For Each para In ActiveDocument.Paragraphs
    If Selection.Font.Bond = True Then MsgBox "All Bold"
    Else: Next para

[此宏的作用是为文档中的每个段落打开一个MsgBox,并说“ All Bold”(例如,如果有50个段落,它将使MsgBox最多显示50次),而不是检查每个段落然后显示一个MsgBox如果它是完全大胆的。理想情况下,在我大约50段的实际文档中,只有3个标题会提示MsgBox出现。

vba ms-word word-vba
1个回答
1
投票

由于您的代码未选择任何内容,因此Selection.Font.Bold与循环中的任何内容都不相关。只需将Selection更改为para.Range,您将仅找到所需的段落。

Dim para As Paragraph

For Each para In ActiveDocument.Paragraphs
    If para.Range.Font.Bold = True Then para.Next.Range.Delete
Next para

可以通过使用Next属性简单地访问以下段落。

如果标题已使用一种格式进行格式化,则只需查找该样式的所有实例即可找到它们。

© www.soinside.com 2019 - 2024. All rights reserved.