【发布时间】:2014-05-27 12:24:48
【问题描述】:
运行后出现“错误'91':对象变量或未设置块变量”:
For Each obj In ActiveDocument.InlineShapes
If obj.OLEFormat.Object.Name = "Button" Then '<-error line
obj.Delete
End If
Next
我以为我需要将 obj 声明为 InlineShape 或 Object,但结果是一样的。 我确定我有名称为 Button 的命令按钮,并且我知道名称和标题之间的区别,两者都不起作用。 此代码是在按下同一按钮后运行的代码的一部分。
【问题讨论】:
-
查看您的代码,如果删除按钮名称是
Button,并且发布的代码是它触发的代码,那么宏应该删除单击的按钮? -
是的,应该。宏执行其他操作,然后它应该删除单击的按钮。用户不能两次运行该宏。我在 excel 中使用了类似的东西,它可以工作。
-
如果用户单击命令按钮“Button”,宏启动并执行某些操作,然后删除命令按钮“Button”。
-
它是命令按钮(ActiveX 控件)。如何循环访问控件?