为数组赋值

我试图更改VBA中的数组的值,但发生运行时错误'13'types不匹配我试图做的是打开一个用户表单,其中有6个button,当前5个button被按下,第六将启用

Public I As Integer Public Botones As Variant Sub funcion_final() Botones = Array(False, False, False, False) MainFrame.Show End Sub Function ChangeValue(I) Botones(I) = True //Here is the error End Function 

在这里button的代码,都具有完全相同的代码,只是改变作为参数发送的号码

 Private Sub BPieza_1_Click() ChangeValue 0 End Sub 

funcion_final()永远不会被调用,所以数组永远不会被初始化。 在调用ChangeValue()之前,确保你调用了funcion_final()