Cambiar un control de contenido de un tipo a otro
Los controles de contenido que puede crear en documentos en Word 2007 y versiones posteriores son extremadamente flexibles. En la mayoría de los casos, puede cambiar fácilmente de un tipo de control de contenido a otro. Por ejemplo, si tiene un control de contenido de fecha puede cambiarlo a control de contenido de texto o, si tiene un control de contenido de texto puede cambiarlo a control de contenido de texto enriquecido. Para ello, use la propiedad Type y establézcala en una constante WdContentControlType .
Nota:
Dependiendo del contenido de un control de contenido, es posible que no pueda cambiar el tipo. Por ejemplo, si tiene un control de contenido de texto enriquecido que contiene texto con formato, no podrá cambiar el control para que sea un control de contenido de texto sin formato. En este caso, Word produce un error en tiempo de ejecución.
Los objetos usados en este ejemplo son:
En el siguiente ejemplo se inserta un nuevo control de contenido de fecha que contiene la fecha actual y, a continuación, se cambia para que sea un control de contenido de texto.
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
En el ejemplo siguiente se inserta un control de contenido de lista desplegable y, a continuación, se cambia para que sea un control de contenido de texto enriquecido.
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
Soporte técnico y comentarios
¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.