2014-10-05 266 views
0

我试图在VBA中更改数组的值,但发生运行时错误'13'类型不匹配 我试图做的是打开一个用户表单有6个按钮,当按下第5个按钮,6日将启用给数组赋值

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 

这里按钮的代码,都有着完全相同的代码,只是改变形式发来的参数个数

Private Sub BPieza_1_Click() 
ChangeValue 0 
End Sub 
+0

你有没有打过'funcion_final'? – GSerg 2014-10-05 20:52:49

+0

嗯,我只是关闭它,重置我的电脑,并再次执行,它的工作原理不知道为什么....但是,它的工作非常感谢 对不起让失去你的时间 – 2014-10-05 21:31:30

+0

它应该是'Sub ChangeValue(I) '不起作用。你没有任何回报。 – ja72 2014-10-06 00:57:30

回答

1

funcion_final()永远不会被调用,所以数组永远不会被调用初始化。致电ChangeValue()之前,请确保您致电funcion_final()