Изменение элемента управления с одного типа на другой
Элементы управления содержимым, которые можно создавать в документах в Word 2007 и более поздних версиях, очень гибки. В большинстве случаев элемент управления содержимым можно легко переключать с одного типа на другой. Например, если у вас есть элемент управления содержимым даты, его можно изменить на элемент управления текстовым содержимым, а если у вас есть элемент управления текстовым содержимым, его можно изменить на элемент управления с содержимым в формате форматированного текста. Для этого используйте свойство Type и присвойте ему константу WdContentControlType .
Примечание.
В зависимости от содержимого элемента управления содержимым вы не сможете изменить тип элемента управления содержимым. Например, если у вас есть элемент управления содержимым в формате форматированного текста, возможно, вы не сможете изменить элемент управления как элемент управления с открытым текстом. В этом случае Word вызывает ошибку во время выполнения.
В этом примере используются следующие объекты:
В следующем примере вставляется новый элемент управления содержимым date, содержащий текущую дату, а затем он изменяется на элемент управления текстовым содержимым.
Sub ChangeTypeOfControl()
Dim objCC As ContentControl
Dim strDate As Date
strDate = Date
Set objCC = Selection.ContentControls.Add(wdContentControlDate)
objCC.Range.Text = strDate
objCC.Type = wdContentControlText
End Sub
В следующем примере вставляется элемент управления содержимым раскрывающегося списка, а затем он изменяется на элемент управления содержимым в формате форматированного текста.
Sub ChangeContentControlType()
Dim objCC As ContentControl
Set objCC = ActiveDocument.ContentControls.Add(Type:=wdContentControlDropdownList)
objCC.SetPlaceholderText Text:="My Favorite Animal"
'List entries
objCC.DropdownListEntries.Add "Cat"
objCC.DropdownListEntries.Add "Dog"
objCC.DropdownListEntries.Add "Horse"
objCC.DropdownListEntries.Add "Monkey"
objCC.DropdownListEntries.Add "Snake"
objCC.DropdownListEntries.Add "Other"
Stop
' Switch to view the new content control in the active document.
' Notice that the content control is a drop-down list.
objCC.Type = wdContentControlRichText
' After running the above code, the content control is no longer
' a drop-down; it is a text content control. Only the placeholder
' text remains; Word removes the items in the list.
End Sub
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.