2010-04-13 74 views
0

我在电子表格中有多个形状和复选框。我想创建一个函数,当其相应的复选框被点击时,将特定的形状放置在前面(比它的对等点更高的Z阶)。这是我目前有的代码:Z-订单问题

Sub CheckBox3_Click() 
If CheckBox3.Value = True Then 
Sheet1.Shapes("blueoval").ZOrder msoBringToFront 
End If 
End Sub 

无论何时运行此代码,我都会收到运行时错误'424'。我是新来的VBA为Excel,所以任何帮助将不胜感激。这段代码有什么问题?少了什么东西?等等。谢谢!

回答

0

您的代码适用于我。

检查:

您的复选框是一个ActiveX控件,而不是一个窗体控件。 复选框名称是CheckBox3。 您在Sheet1上有一个名为blueoval的形状。 带有蓝色椭圆的工作表名称实际上是Sheet1(在Visual Basic编辑器中选中此项)。 在Visual Basic编辑器中,选择工具>引用,并确保没有引用标记为MISSING。 您的代码位于复选框所在的工作表上,而不在单独的模块中。