Clase FormFields (Word VBA)

Una colección de FormField objetos que representan todos los campos de formulario de una selección, intervalo o documento.

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

Dim ffs as FormFields
Set ffs = ActiveDocument.FormFields

Los siguientes procedimientos se pueden usar para establecer variables de clase FormFields : Document.FormFields, Range.FormFields y Selection.FormFields.

For Each

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

Dim ffd As FormField
For Each ffd In ActiveDocument.FormFields
	
Next ffd

Add

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

Add (Range, Type)

Selection.Collapse Direction:=wdCollapseEnd 
Set ffield = ActiveDocument.FormFields _ 
 .Add(Range:=Selection.Range, Type:=wdFieldFormCheckBox) 
With ffield 
 .Name = "Check_Box_1" 
 .CheckBox.Value = True 
End With

Arguments

Estos son los argumentos con nombre :

Range (Range) - Intervalo en el que desea agregar el campo de formulario.

Type (WdFieldType) - Tipo de campo de formulario que agregar.


Aquí puede ver valores posibles para

WdFieldType

Count

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

Dim lngCount As Long
lngCount = ActiveDocument.FormFields.Count

Item

Devuelve un objeto FormField individual de una colección.

Item (Index)

Index: El objeto individual que se va a devolver.

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

Shaded

True si se aplica sombreado a los campos de formulario.

El sombreado facilita la búsqueda de campos de formulario en los documentos y no afecta a la copia impresa.

Documents("Employment Form.doc").FormFields.Shaded = False