在 Word 中动态更改 ActiveX 组件名称属性

Changing ActiveX Component Name Properties Dynamically in Word

我正在尝试在 Word 文档中开发一个动态用户表单,它将创建一个具有通用名称的 ActiveX 单选按钮,然后重命名创建的单选按钮,使其具有基于其在表单中的位置的特定编号.

到目前为止,我相信我拥有编写代码的所有组件,因为我能够创建按钮。我通过使用 VBA 导入一个快速部件来创建按钮,该部件具有带有定义的 radioButtonX 名称的单选按钮,例如,我能够将该单选按钮的名称 属性 更改为 radioButton1。我 运行 遇到的问题是我的代码将插入具有通用 radioButtonX 名称的快速部分,然后无法更改单选按钮名称,因为它说 radioButtonX 不存在。但是,我可以在插入 radioButtonX 后手动 运行 代码的第二部分,并且我能够成功更改单选按钮名称,从而在两个单独的步骤中得到我正在寻找的最终结果。

去年我是一名自学成才的 VBA 脚本编写者,所以我远不是编码专家。到目前为止我采取的一些策略是:

我希望得到一些建议、策略或示例代码,我可以使用这些建议、策略或示例代码让 VBA 识别我在代码 运行ning 时插入的新单选按钮。我的另一个想法是可能存在一个命令 VBA 刷新其对变量的了解,但到目前为止我还没有运气在我的网络搜索中找到类似的东西。

我试图简化我正在处理的代码,并提取将执行我请求的功能的代码。 运行 更简单的代码成功并在下面列出。

Private Sub AddRadioButton() 
    Selection.TypeText Text:="TestRadioButton" 
    Selection.Range.InsertAutoText 
    ActiveWindow.View.ShowXMLMarkup = wdToggle 

    ChangeButtonName 
End Sub 

Private Sub ChangeButtonName() 
    ThisDocument.radioButtonX.Name = "radioButton1" 
End Sub 

要使此脚本起作用,您必须创建一个快速部件或一个名为 TestRadioButton 的单选按钮。我认为现在的根本问题必须处理看起来不起作用的时间,因为这段代码来自的脚本使用了一个带有多个通用单选按钮的快速部分,因此执行的脚本无法识别新的单选按钮而 运行.