是否有任何方法或宏可以删除 MS Word 中的所有内容控件?

Thi*_*ina 3 vba ms-word

我需要删除活动文档中的所有内容控制器(锁定和解锁)而不删除任何文本。我已经搜索并找到了一个宏。但我认为它不能正常工作。

Word VBA 删除带有特定标签的内容控件

是否有可能做到这一点?

编辑:我试过下面的代码。它将删除带有文本内容的内容控制器。我只需要删除内容控制器。

Sub Test()
Dim objCC As ContentControl
Do While ActiveDocument.ContentControls.Count > 0
For Each objCC In ActiveDocument.ContentControls
objCC.Delete True
Next
Loop
End Sub
Run Code Online (Sandbox Code Playgroud)

小智 9

我能够在没有任何宏的情况下删除所有内容控件(在 Word 2013 中),如下所示:

  1. 在开发人员菜单上,选择设计模式。
  2. 如果没有内容控件可见,请滚动浏览直到出现一个。
  3. 按 Ctrl+A 选择整个文档。
  4. 右键单击可见的内容控件。
  5. 在上下文菜单中,单击删除内容控制。

我不知道它是否适用于所有类型的内容控件。

  • 以旧的 .doc 格式保存文档也会删除任何内容控件,只留下显示的内容。 (5认同)

Thi*_*ina 7

我已经用自己的方式找到了答案:)

Public Sub Test()

  Dim oRng As Range
  Dim CC   As ContentControl
  Dim LC   As Integer
  Dim LRCC As Integer
  Dim LTCC As Integer
  Dim LE   As Boolean

'Remove all content controls
Set oRng = ActiveDocument.Content
LTCC = LTCC + oRng.ContentControls.Count
For LC = oRng.ContentControls.Count To 1 Step -1

Set CC = oRng.ContentControls(LC)
If CC.LockContentControl = True Then
    CC.LockContentControl = False
End If
CC.Delete
If Not LE Then
    LRCC = LRCC + 1
    End If
    LE = False
Next
End Sub
Run Code Online (Sandbox Code Playgroud)

这会对某人有帮助。