#3: Det er ActiveX controls, som er benyttet i dokumentet. Det er noget andet end kontrolelementer (content controls).
Du skal have tilføjet en makro med navnet "Document_ContentControlOnExit" i modulet ThisDocument i dit dokument. En sådan makro vil køre, hver gang du går ud af et kontrolelement.
Jeg har lavet en makro, som du kan bruge eller bygge videre på. Se kommentarerne i makroen. Bemærk, at jeg har givet tekstkontrollen titlen "Text1" og rullefeltet titlen "DropDown1" (angives i dialogboksen Egenskaber (Properties), som kan åbnes fra fanen Udvikler (Developer). Hvis du bruger andre navne, skal du rette i makroen, da den ellers ikke vil virke.
--------------------------
Private Sub Document_ContentControlOnExit(ByVal ContentControl As ContentControl, Cancel As Boolean)
Dim strValue As String
Dim oCC_DropDown As ContentControl
'set reference to DropDown1 (if more found with that title, the first is used)
Set oCC_DropDown = ActiveDocument.SelectContentControlsByTitle("DropDown1").Item(1)
'if Text1 has been changed, add value to DropDown1 on exit
If ContentControl.Title = "Text1" Then
strValue = ContentControl.Range.Text
'if not the deafault value and not an empty string or spaces only, add value to DropDown1
If strValue <> ContentControl.PlaceholderText And Trim(strValue) <> "" Then
'if only one item, add - else: first delete item 2, then add
If oCC_DropDown.DropdownListEntries.Count > 1 Then
'first delete existing item 2
oCC_DropDown.DropdownListEntries(2).Delete
End If
oCC_DropDown.DropdownListEntries.Add Text:=strValue, Value:=strValue
ElseIf strValue = ContentControl.PlaceholderText Then
'if text previously entered and now removed, remove item 2 from DropDown1
If oCC_DropDown.DropdownListEntries.Count > 1 Then
oCC_DropDown.DropdownListEntries(2).Delete
End If
End If
End If
'clean up
Set oCC_DropDown = Nothing
End Sub
--------------------------
Se denne artikel for mere info, som måske kan være til hjælp:
http://gregmaxey.mvps.org/word_tip_pages/insert_content_with_content_controls.html