You seem to have changed your requirement. Either you want the field
updating when you open the document, as originally stated, or you don't.
Perhaps you can tell us exactly what the requirement is here? If you simply
want to insert the user initials of the document creator and get them to
stick through thick and thin, then you either need to convert the field to
text or abandon the field and insert the initials with vba.
Sub Macro2()
Dim oFld As Field
Dim sInit as String
sInit = "GM" ' Set required initials
For Each oFld In ActiveDocument.Fields
If oFld.Type = wdFieldUserInitials Then
If oFld.Result <> sInit Then
oFld.Update
oFld.Unlink
End If
End If
Next
or
Dim sInit As String
sInit = Application.UserInitials
Selection.TypeText sInit
--
<>>< ><<> ><<> <>>< ><<> <>>< <>><<>
Graham Mayor - Word MVP
My web site
www.gmayor.com
<>>< ><<> ><<> <>>< ><<> <>>< <>><<>