查找具有BackgroundPatternColor但具有任何样式的段落

时间:2018-11-21 08:46:41

标签: vba ms-word

我正在搜索具有VBA功能的Word(2016)文档,以查找应用了黄色背景色的段落。如果段落的样式为Normal ...

,则效果很好
With Selection.Find
    .ClearFormatting
    .ParagraphFormat.Shading.BackgroundPatternColor = wdColorYellow
    .Wrap = wdFindContinue
    .Text = ""
End With

While Selection.Find.Execute
    ' do the thing
Wend

运行此命令后,便可以在Word中打开“高级查找”对话框,显示如下:

Search dialog showing VBA-set formatting

有些带有黄色背景图案的段落不是Style = "Normal",并且发生这种情况时,我可以使用“格式->样式”对话框来删除样式为Normal的要求...

Remove the style requirement Now searches all styles

如果现在返回VBA,则可以使用Selection.Find.Execute,并且可以找到之前遗漏的段落。询问Selection.Find.Style属性会显示值Normal,该值与以前一样,只是现在起作用了。

在VBA中似乎没有任何方法可以删除样式要求? 有人知道该怎么做吗?

我尝试将Style的值设置为:

  • 没事
  • “”
  • “(无样式)”
  • 9999999

这些都不起作用。我也尝试设置Find.Format = False,但是那也不起作用。我认为VBA中的Find.Style属性仍然显示Normal很奇怪,但是如果我将其设置为Normal,搜索将找不到该段落。

现在就打开任何建议。

0 个答案:

没有答案