2014-10-05 264 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()