This may help:
Sub ScratchMacro()
'A basic Word macro coded by Greg Maxey
Dim oRng As Range
Dim oCDP As DocumentProperty
'Say you have a bm named "bmDemo" and you want to write text to it ...
Set oRng = ActiveDocument.Bookmarks("bmDemo").Range
oRng.Text = "Testing one, two, three ..."
'Doing that destroys the bookmark so recreate it around the new defined range.
ActiveDocument.Bookmarks.Add "bmDemo", oRng
'Say you have a custom document property named "cdpDemo"
Set oCDP = ActiveDocument.CustomDocumentProperties("cdpDemo")
'You change its value based:
oCDP.Value = "Testing one, two, three ..."
'You have a DocProperty field in the document
ActiveDocument.Fields.Update
lbl_Exit:
Exit Sub
End Sub