如何在VBA

时间:2017-08-25 11:34:22

标签: excel vba excel-vba checkbox

我知道之前已经提出类似的问题,例如thisthis 但我在初始化复选框数组对象时遇到了问题(我的VBA非常生疏)。

我有以下代码:

Dim chkAdQ(4) As Checkbox

Set chkAdQ(0) = chkAdQ1
Set chkAdQ(1) = chkAdQ2
Set chkAdQ(2) = chkAdQ3
Set chkAdQ(3) = chkAdQ4

其中chkAdQ1,chkAdQ2等是表单上的ActiveX复选框。在调试时我可以看到chkAdQ(4)提示“没有”'在声明本身上,因此赋值给出了类型不匹配异常。

我也尝试将chkAdQ(4)声明为对象,但无济于事。有什么想法吗?

2 个答案:

答案 0 :(得分:1)

您可以使用简单的循环

很好地添加工作表上的所有复选框
null

使用时删除第二个循环。这只是为了证明他们已经通过将他们的名字打印到立即窗口来添加它们

答案 1 :(得分:0)

试试这个

Dim chkAdQ(0 To 3) As Variant

Set chkAdQ(0) = chkAdQ1
Set chkAdQ(1) = chkAdQ2
Set chkAdQ(2) = chkAdQ3
Set chkAdQ(3) = chkAdQ4