Clase FormField (Word VBA)

La clase FormField representa un campo de formulario único.

Los principales procedimientos de la clase FormField son Copy, Delete, Select y FormFields.Add

Set

Para usar una variable de clase FormField, primero debe ser instanciado, por ejemplo

Dim ffd as FormField
Set ffd = ActiveDocument.FormFields(Index:=1)

Los siguientes procedimientos se pueden usar para establecer variables de clase FormField : Next, Previous, FormFields.Add, FormFields.Item, Document.FormFields, Range.FormFields y Selection.FormFields

For Each

A continuación, se muestra un ejemplo de cómo procesar los elementos FormField en una colección.

Dim ffd As FormField
For Each ffd In ActiveDocument.FormFields
	ffd.CalculateOnExit = False
Next ffd

Métodos

Los principales métodos de la clase FormField son

Copy - Copia el campo de formulario especificado en el Portapapeles.

ActiveDocument.FormFields(1).Copy

Delete - Elimina el campo de formulario especificado.

ActiveDocument.FormFields(1).Delete

Select - Selecciona el objeto especificado.

ActiveDocument.FormFields(1).Select

FormFields.Add - Devuelve un objeto FormField que representa un nuevo campo de formulario agregado a un intervalo.

Dim ffd As FormField
Set ffd = ActiveDocument.FormFields.Add(Range:=, Type:=wdFieldAddin)

Propiedades

CalculateOnExit True si las referencias al campo de formulario especificado se actualizan automáticamente siempre que se sale del campo.

ActiveDocument.FormFields(1).CalculateOnExit = True

CheckBox Devuelve un objeto CheckBox que representa un campo de formulario de casilla de verificación.

Dim cbxCheckBox As CheckBox
Set cbxCheckBox = ActiveDocument.FormFields(1).CheckBox

DropDown Devuelve un objeto DropDown que representa un campo de formulario de lista desplegable.

Dim ddnDropDown As DropDown
Set ddnDropDown = ActiveDocument.FormFields(1).DropDown

Enabled True si está activado un campo de formulario.

ActiveDocument.FormFields(1).Enabled = True

EntryMacro Devuelve o establece un nombre de macro de entrada para el campo de formulario especificado (CheckBox, DropDown o TextInput).

ActiveDocument.FormFields(1).EntryMacro =

ExitMacro Devuelve o establece un nombre de macro de salida para el campo de formulario especificado (CheckBox, DropDown o TextInput).

ActiveDocument.FormFields(1).ExitMacro =

HelpText Devuelve o establece el texto que se muestra en un cuadro de mensaje cuando el campo de formulario tiene el foco y el usuario presiona la tecla F1.

ActiveDocument.FormFields(1).HelpText =

Name Devuelve o establece el nombre del objeto especificado.

ActiveDocument.FormFields(1).Name =

Next Devuelve el siguiente campo de formulario de la colección.

Dim ffdNext As FormField
Set ffdNext = ActiveDocument.FormFields(1).Next

OwnHelp Especifica el origen del texto que se muestra en un cuadro de mensaje cuando un campo de formulario tiene el foco y el usuario presiona la tecla F1.

ActiveDocument.FormFields(1).OwnHelp = True

OwnStatus Especifica el origen del texto que se muestra en el barra de estado cuando un campo de formulario se el foco.

ActiveDocument.FormFields(1).OwnStatus = True

Parent Devuelve un objeto Object que representa el objeto primario del objeto FormField especificado.

Dim objParent As Object
Set objParent = ActiveDocument.FormFields(1).Parent

Previous Devuelve el campo de formulario anterior de la colección.

Dim ffdPrevious As FormField
Set ffdPrevious = ActiveDocument.FormFields(1).Previous

Range Devuelve un objeto Range que representa la parte de un documento incluida en el campo de formulario.

Dim rngRange As Range
Set rngRange = ActiveDocument.FormFields(1).Range

Result Devuelve una cadena que representa el resultado del campo de formulario especificado.

ActiveDocument.FormFields(1).Result =

StatusText Devuelve o establece el texto que se muestra en la barra de estado cuando se selecciona un campo de formulario.

ActiveDocument.FormFields(1).StatusText =

TextInput Devuelve un objeto TextInput que representa un campo de formulario de texto.

Dim titTextInput As TextInput
Set titTextInput = ActiveDocument.FormFields(1).TextInput

Type Devuelve el tipo de campo.

Dim wftType As WdFieldType
wftType = ActiveDocument.FormFields(1).Type

FormFields.Count Devuelve un Long que representa el número de campos de la colección.

Dim lngCount As Long
lngCount = ActiveDocument.FormFields.Count

FormFields.Parent Devuelve un objeto Object que representa el objeto primario del objeto FormFields especificado.

Dim objParent As Object
Set objParent = ActiveDocument.FormFields.Parent

FormFields.Shaded True si se aplica sombreado a los campos de formulario.

ActiveDocument.FormFields.Shaded = True