[英]Word VBA to delete Content Controls with specific Tags
我阅读了有关如何在SO上通过标记查找和禁用内容控件的问题的答案(以下是为您提供方便的代码)。 就我而言,我需要删除带有SPECIFIC标签的内容控件(CC)。
例如,从150个CCs
,我有文件,我需要找到并删除只有那些CCs
使用标签"DCC"
(只是CC,而不是其内容)。 如您所知,我在VB中没有/没有经验,非常感谢我可以复制/粘贴的脚本。
我在Word 2007中使用Rich Text CC。
Private Sub DeleteCCByTag_Alternative(ccTag As String)
Dim cc As ContentControl
Set cc = ThisDocument.SelectContentControlsByTag(ccTag).Item(1)
With cc
.LockContentControl = False
.LockContents = False
.Range.Delete 'to delete CC content
.Delete (False)
End With
End Sub
好吧,我能够找出一种方法来执行此操作。。。。。。。不是最漂亮的代码,而且我敢肯定,有更好的方法可以执行此操作。 但是,由于我对VB的了解非常有限,因此以下内容可以满足我的需求:
Sub DeleteCCByTag()
Dim oThisdoc As Word.Document
Dim oCC As ContentControl
Dim oCCs As ContentControls
Set oThisdoc = ActiveDocument
Set oCCs = oThisdoc.SelectContentControlsByTag("DCC")
For Each oCC In oCCs
If oCCs.Count > 0 Then
oCC.Delete False
End If
Next
End Sub
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.