0

我在电子表格中有多个形状和复选框。我想创建一个函数,当单击相应的复选框时,将特定形状放在前面(比其同行更高的 Z 顺序)。这是我目前拥有的代码:

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

每当我运行此代码时,我都会收到运行时错误“424”。我是 VBA for excel 的新手,所以任何帮助将不胜感激。这段代码有什么问题?少了什么东西?等等。谢谢!

4

1 回答 1

0

你的代码对我有用。

检查:

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

于 2010-04-16T08:47:58.067 回答