【发布时间】:2016-06-23 23:48:37
【问题描述】:
我在 VBA (MS Word) 中有以下代码,这意味着在我单击一个名为 cmdFormPreencher 的按钮后运行:
Private Sub cmdFormPreencher_Click()
'
If ActiveDocument.FormsDesign = False Then
ActiveDocument.ToggleFormsDesign
End If
'
ThisDocument.cmdFormPreencher.Select
ThisDocument.cmdFormPreencher.Delete
ActiveDocument.ToggleFormsDesign
'
UserForm2.Show
End Sub
上面代码的目的是删除插入到我的文档中的那个按钮。
但是当我运行代码时,只选择了按钮。当我试图通过调试弄清楚发生了什么时,它显示代码运行到ActiveDocument.ToggleFormsDesign 并且没有运行剩余的代码
这是 VBA 的错误,还是我做错了什么?如果是这样,我该如何解决这个问题?
谢谢!
注意:ActiveX 按钮不在页眉和页脚中。文本换行设置为 在文本前面
编辑:
当我尝试运行宏、激活 FormDesign、选择 ActiveX 按钮然后删除时,我得到以下代码:
Sub Macro1()
'
' Macro1 Macro
'
'
ActiveDocument.ToggleFormsDesign
ActiveDocument.Shapes("Control 52").Select
Selection.ShapeRange.Delete
ActiveDocument.ToggleFormsDesign
End Sub
但是当我运行这段代码时,什么都没有发生......
【问题讨论】:
-
你在这里有两次
ActiveDocument.ToggleFormsDesign...代码是在第一个之后停止,跳过ThisDocument.cmdFormPreencher.Select和.Delete,还是在第二个之后停止,跳过UserForm2.Show? -
@Mat'sMug 在第一个之后