Clase Fields (Word VBA)
Una colección de objetos Field que representan todos los campos de una selección, intervalo o documento. Para usar una variable de clase Fields, primero debe ser instanciado, por ejemplo
Dim flds as Fields
Set flds = ActiveDocument.Fields
For Each
A continuación, se muestra un ejemplo de cómo procesar los elementos Fields en una colección.
Dim fld As Field
For Each fld In ActiveDocument.Fields
Next fld
Add
Agrega un objeto Field a la colección Fields .
No se pueden insertar algunos campos (como wdFieldOCX y wdFieldFormCheckBox) mediante el método Add de la colección Fields .
Add (Range, Type, Text, PreserveFormatting)
Selection.Collapse Direction:=wdCollapseStart
Set myField = ActiveDocument.Fields.Add(Range:=Selection.Range, _
Type:=wdFieldUserName)
Arguments
Un argumento con nombre
Range (Range) - Intervalo donde desea agregar el campo.
Optional arguments
Los siguientes argumentos son opcionales
Type (WdFieldType) - Puede ser cualquier constante WdFieldType .
Aquí puede ver valores posibles para
Text (String) - Texto adicional necesario para el campo.
PreserveFormatting (Boolean) - True para que se conserve el formato que se aplique al campo durante las actualizaciones.
Count
Devuelve un Long que representa el número de campos de la colección.
Dim lngCount As Long
lngCount = ActiveDocument.Fields.Count
Item
Devuelve un objeto Field individual de una colección.
Item (Index)
Index: El objeto individual que se va a devolver.
Dim fld As Field
Set fld = ActiveDocument.Fields(Index:=1)
Locked
True si todos los campos de la colección Fields están bloqueados.
Esta propiedad puede ser true, falseo wdUndefined (si algunos de los campos de la colección están bloqueados y otros no).
Selection.Fields.Locked = True
ToggleShowCodes
Cambia la visualización de los campos entre códigos de campo y los resultados del campo.
Selection.Fields.ToggleShowCodes
Unlink
Reemplaza todos los campos de la colección Fields por sus resultados más recientes.
Al desvincular un campo, el resultado actual se convierte en texto o en un gráfico y ya no se puede actualizar automáticamente.
With ActiveDocument.Sections(1).Range.Fields
.Update
.Unlink
End With
Update
Actualiza el resultado del objeto Fields.
Devuelve 0 (cero) si no se producen errores al actualizar los campos, o devuelve un Long que representa el índice del primer campo que contiene un error.
If ActiveDocument.Fields.Update = 0 Then
MsgBox "Update Successful"
Else
MsgBox "Field " & ActiveDocument.Fields.Update & _
" has an error"
End If
UpdateSource
Guarda los cambios realizados en los resultados de un campo INCLUDETEXT en el documento de origen.
El formato del documento de origen deberá ser documento de Word.
ActiveDocument.Fields.UpdateSource