Folgendermaßen lassen sich in Visual Basic zu einem Dokument an einer bestimmten Position (Range) Felder hinzufügen, in denen der Wert einer Dokumentenvariablen angezeigt wird:
Code
tempField = ActiveDocument.Fields.Add(Range:=position, Type:="DocVariable", Text:="Name der Dokumentenvariable")
Nun würde ich gerne nach einem Feld suchen, in welchem eine bestimmte Dokumentenvariable angezeigt wird. Dazu habe ich versucht, eine Funktion zu schreiben, deren Code lautet:
Code
Function FindField(ByVal fieldName As String) As Integer
'This function searches for a field with a particular name and returns its index
Dim oField As Field
For Each oField In ActiveDocument.Fields
If oField.Name = fieldName Then ' *** Wie finde ich den Namen eines Feldes heraus?
FindField = oField.Index
Exit Function
End If
Next
'If not found, return 0 (this may need some improvement; what if the field index is correctly 0? In this program this
'won't matter but...)
FindField = 0
End Function
Alles anzeigen
Dieser Code läuft jedoch nicht, weil das Objekt "Field" keine Eigenschaft oder Methode namens "Name" hat. Welche Eigenschaft/Methode muss ich statt dessen wählen, um das Feld mit der gesuchten Dokumentenvariable zu eruieren?