![]() |
#1
|
|||
|
|||
![]()
For autotext or dropdownlist, we could set .range.text ="" to reset them.
But for building block gallery content control (category is table), how to do it? Many thanks. Sub ResetCC() Dim ct1 As ContentControl Dim String1 As String For Each ct1 In ActiveDocument.ContentControls If ct1.Type=wdContentControlDropdownList Then ct1.Type = wdContentControlText ct1.Range.Text = "" ct1.Type = wdContentControlDropdownList End If If ct1.Type=wdContentControlBuildingBlockGallery Then ' how to reset? End If Next End Sub |
#2
|
||||
|
||||
![]()
Try this version
Code:
Sub ResetCCs() Dim aCC As ContentControl, iType As Integer For Each aCC In ActiveDocument.ContentControls With aCC Select Case .Type Case wdContentControlText, wdContentControlRichText, wdContentControlDate .Range.Text = "" Case wdContentControlComboBox, wdContentControlDropdownList .DropdownListEntries(1).Select Case wdContentControlCheckBox .Checked = False Case wdContentControlBuildingBlockGallery iType = .Type .Type = wdContentControlRichText .Range.Text = "" Do While .Range.Tables.Count > 0 .Range.Tables(1).Delete Loop .Type = iType End Select End With Next aCC End Sub
__________________
Andrew Lockton Chrysalis Design, Melbourne Australia Last edited by Guessed; 04-13-2022 at 11:30 PM. Reason: Amended to deal with tables in Building Block CCs |
#3
|
|||
|
|||
![]()
Many thanks Andrew,
If the building block is table , .Range.Text = "" throws the error 6192, inappropriate range. Any fix for this ? |
#4
|
||||
|
||||
![]()
I've amended the code to remove any tables which might be in the Content Control when you try to clear it.
__________________
Andrew Lockton Chrysalis Design, Melbourne Australia |
#5
|
|||
|
|||
![]()
The code erases the category and type of the content control. I would like all the properties remain the same but reset it to the "unselected" initial status.
please see the attached file |
#6
|
|||
|
|||
![]()
There are tools available in the Visual Basic Editor to help you answer questions like this: IntelliSense, the Object Browser, online help.
Code:
Sub ResetCCs() Dim aCC As ContentControl, iType As Integer Dim bbCat As String, bbType As Long For Each aCC In ActiveDocument.ContentControls With aCC Select Case .Type Case wdContentControlText, wdContentControlRichText, wdContentControlDate .Range.Text = "" Case wdContentControlComboBox, wdContentControlDropdownList .DropdownListEntries(1).Select Case wdContentControlCheckBox .Checked = False Case wdContentControlBuildingBlockGallery iType = .Type bbType = .BuildingBlockType bbCat = .BuildingBlockCategory .Type = wdContentControlRichText .Range.Text = "" Do While .Range.Tables.Count > 0 .Range.Tables(1).Delete Loop .Type = iType .BuildingBlockType = bbType .BuildingBlockCategory = bbCat End Select End With Next aCC End Sub |
#7
|
|||
|
|||
![]()
It works.
Can't thank you enough. |
![]() |
|
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
collabrate bulding block gallery or text content | samouti | Word | 7 | 05-07-2019 06:56 AM |
Reference a Building block gallery control from another Field and insert text using If logic | Flynny | Word VBA | 3 | 07-30-2018 08:34 PM |
How-to: Add a quickpart, field or Building Block Gallery Content Control based on a UserForm | HighSierra | Word VBA | 0 | 05-06-2015 08:20 PM |
Using Building Block Gallery Content function on a form with restricted editing | wes228 | Word VBA | 1 | 08-28-2014 08:14 AM |
how to make building block content control determine bb to display elsewhere | jamles12 | Word VBA | 5 | 11-16-2013 11:38 AM |