删除隐藏的书签中包含的文本

时间:2019-05-03 11:26:44

标签: vba ms-word

我已经创建了一个模板,在该模板中,根据特定复选框(内容控件)的值,使用以下公式隐藏用与复选框同名的书签选择的段落

Dim bookmark As String
Dim ctl As ContentControl
    For Each ctl In ActiveDocument.ContentControls
        If ctl.Type = wdContentControlCheckBox Then
            If ctl.Checked = False Then
            bookmark = ctl.Tag
                 Bookmarks(bookmark).Range.Font.Hidden = True
                 Else
                 bookmark = "hide_" & ctl.Tag
                  Bookmarks(bookmark).Range.Font.Hidden = True
                                  End If
        End If
    Next

我正在尝试从使用上述公式的段落中删除文档(删除它们),但是我找不到这样做的方法。 之所以要删除隐藏段落的文档,是因为我想对段落编号,并且在不删除它们的情况下,编号也指的是隐藏段落。

使用“查找并替换为隐藏字体”对我没有帮助,因为它是另一种隐藏内容。我认为书签保存在xml代码中。

如果有人可以引导我实现目标,请告诉我。 谢谢!

1 个答案:

答案 0 :(得分:0)

尝试:

Dim CCtrl As ContentControl
For Each CCtrl In ActiveDocument.ContentControls
  With CCtrl
    If .Type = wdContentControlCheckBox Then
      If .Checked = False Then
        ActiveDocument.Bookmarks(.Tag).Range.Delete
      End If
    End If
  End With
Next