Classe Fields (Word VBA)
Uma coleção de objetos Field que representa todos os campos em uma seleção, intervalo ou documento. Para usar uma variável de classe Fields, ela primeiro precisa ser instanciada por exemplo
Dim flds as Fields
Set flds = ActiveDocument.Fields
For Each
Aqui está um exemplo de processamento dos itens Fields em uma coleção.
Dim fld As Field
For Each fld In ActiveDocument.Fields
Next fld
Add
Adiciona um objeto Field à coleção Fields . Retorna o objeto Field no intervalo especificado.
Você não pode inserir alguns campos (como wdFieldOCX e wdFieldFormCheckBox) usando o método Add da coleção Fields . Ao contrário, você deve usar métodos específicos como AddOLEControl e Add para a coleção FormFields.
Add (Range, Type, Text, PreserveFormatting)
Selection.Collapse Direction:=wdCollapseStart
Set myField = ActiveDocument.Fields.Add(Range:=Selection.Range, _
Type:=wdFieldUserName)
Arguments
O seguinte argumento é necessário
Range (Range) - O intervalo no qual você deseja incluir o campo. Se o intervalo não estiver recolhido, o campo substituirá o intervalo.
Optional arguments
Os seguintes argumentos são opcionais
Type (WdFieldType) - Pode ser qualquer constante WdFieldType . Para obter uma lista de constantes válidas, consulte o Pesquisador de objetos do Microsoft Visual Basic. O valor padrão é wdFieldEmpty.
Aqui você pode encontrar os valores possíveis para
Text (String) - Texto adicional necessário para o campo. Por exemplo, se quiser especificar uma opção para o campo, você deve acrescentá-la aqui.
PreserveFormatting (Boolean) - True para fazer com que a formatação aplicada ao campo seja preservada durante as atualizações.
Count
Retorna um Long que representa o número de campos na coleção. Somente leitura.
Dim lngCount As Long
lngCount = ActiveDocument.Fields.Count
Item
Retorna um objeto Field individual em uma coleção.
Item (Index)
Index: O objeto individual a ser retornado. Pode ser um Long que indica a posição ordinal do objeto individual.
Dim fld As Field
Set fld = ActiveDocument.Fields(Index:=1)
Locked
True se todos os campos na coleção Fields estão protegidos. Long de leitura/gravação.
Essa propriedade pode ser true, falseou wdUndefined (se alguns campos da coleção estiverem bloqueados e outros não).
Selection.Fields.Locked = True
ToggleShowCodes
Alterna a exibição dos campos entre códigos de campo e resultados de campo. Use a propriedade ShowCodes para controlar a exibição de um campo individual.
Selection.Fields.ToggleShowCodes
Unlink
Substitui todos os campos na coleção Fields por seus resultados mais recentes.
Quando você desvincula um campo, seu resultado atual é convertido em texto ou em um elemento gráfico, não podendo mais ser atualizado automaticamente. Observe que alguns campos — como XE (Entrada de Índice) e SEQ (Sequência) — não podem ser desvinculados.
With ActiveDocument.Sections(1).Range.Fields
.Update
.Unlink
End With
Update
Atualiza o resultado do objeto de campos.
Retorna 0 (zero) se nenhum erro ocorrer quando os campos são atualizados ou retorna um Long que representa o índice do primeiro campo que contém um erro.
If ActiveDocument.Fields.Update = 0 Then
MsgBox "Update Successful"
Else
MsgBox "Field " & ActiveDocument.Fields.Update & _
" has an error"
End If
UpdateSource
Salva as alterações feitas nos resultados de um campo INCLUDETEXT de volta para o documento de origem.
O documento de origem precisa estar formatado como um documento do Word.
ActiveDocument.Fields.UpdateSource