Classe FormField (Word VBA)

La classe FormField représente un seul champ de formulaire.

Les procédures principales de la classe FormField sont Copy, Delete, Select et FormFields.Add

Set

Pour utiliser une variable de classe FormField, elle doit d'abord être instanciée, par exemple

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

Les procédures suivantes peuvent être utilisés pour définir des variables de la classe FormField : Next, Previous, FormFields.Add, FormFields.Item, Document.FormFields, Range.FormFields et Selection.FormFields

For Each

Voici un exemple de traitement des éléments FormField dans une collection

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

Méthodes

Les méthodes principales de la classe FormField sont

Copy - Copie le champ de formulaire spécifié dans le Presse-papiers.

ActiveDocument.FormFields(1).Copy

Delete - Supprime le champ de formulaire spécifié.

ActiveDocument.FormFields(1).Delete

Select - Sélectionne l'objet spécifié.

ActiveDocument.FormFields(1).Select

FormFields.Add - Renvoie un objet FormField qui représente un nouveau champ de type formulaire ajouté à une plage.

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

Propriétés

CalculateOnExit True si les références au champ de formulaire spécifié sont automatiquement mises à jour lors de la fermeture du champ.

ActiveDocument.FormFields(1).CalculateOnExit = True

CheckBox Renvoie un objet CheckBox qui représente un champ case à cocher.

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

DropDown Renvoie un objet DropDown qui représente un champ de formulaire de liste déroulante.

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

Enabled True si un champ de formulaire est activé.

ActiveDocument.FormFields(1).Enabled = True

EntryMacro Renvoie ou définit un nom de macro d’entrée pour le champ de formulaire spécifié (CheckBox, DropDown ou TextInput).

ActiveDocument.FormFields(1).EntryMacro =

ExitMacro Cette propriété renvoie ou définit un nom de macro de sortie pour le champ de formulaire spécifié (CheckBox, DropDown ou TextInput).

ActiveDocument.FormFields(1).ExitMacro =

HelpText Cette propriété renvoie ou définit le texte qui est affiché dans une boîte de message lorsque le champ de formulaire est activé et que l'utilisateur appuie sur F1.

ActiveDocument.FormFields(1).HelpText =

Name Cette propriété renvoie ou définit le nom de l'objet spécifié.

ActiveDocument.FormFields(1).Name =

Next Renvoie le champ de formulaire suivant de la collection.

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

OwnHelp Spécifie la source du texte affiché dans une boîte de message quand un champ de formulaire est activé et que l'utilisateur appuie sur F1.

ActiveDocument.FormFields(1).OwnHelp = True

OwnStatus Spécifie la source du texte affiché dans l'état de la barre lorsqu'un champ de formulaire a le focus.

ActiveDocument.FormFields(1).OwnStatus = True

Parent Renvoie un Object qui représente l'objet parent de l'objet FormField spécifié.

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

Previous Renvoie le champ de formulaire précédent de la collection.

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

Range Renvoie un objet Range qui représente la partie d'un document contenue dans le champ de formulaire.

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

Result Renvoie une valeur de type String qui représente le résultat du champ de formulaire spécifié.

ActiveDocument.FormFields(1).Result =

StatusText Renvoie ou définit le texte qui est affiché dans la barre d’état quand un champ de formulaire est sélectionné.

ActiveDocument.FormFields(1).StatusText =

TextInput Renvoie un objet TextInput qui représente un champ de formulaire de texte.

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

Type Renvoie le type de champ.

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

FormFields.Count Renvoie un type long qui représente le nombre de champs dans la collection.

Dim lngCount As Long
lngCount = ActiveDocument.FormFields.Count

FormFields.Parent Renvoie un Object qui représente l'objet parent de l'objet FormFields spécifié.

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

FormFields.Shaded True si la trame de fond est appliquée aux champs de formulaire.

ActiveDocument.FormFields.Shaded = True