2017-04-11 65 views
1

我遇到下面的代碼問題。每當它到達最後一行時,它都會拋出錯誤「參數不可選」,並且不會編譯。我不知道它談論的是什麼論點。Excel VBA:參數不可選錯誤添加到數組時

Option Base 1 
Dim temp As New ProductionItem 'Production Item is a class that I made 
Dim Arr() As Collection 
ReDim Arr(5) 
Dim coll As New Collection 
coll.Add temp 
Arr(1) = coll 
+4

一個'Collection'是一個對象。如果你想把'Arr(1)'設置爲集合'coll',你需要'Set Arr(1)= coll'。 (但是你真的打算將'Arr'作爲'ProductionItem'的集合的數組嗎?) – YowE3K

+0

它所談論的缺少的參數是'key',因爲沒有'Set'關鍵字,VBA試圖調用* Collection對象的默認屬性*,即'col1.Item(key)',其中參數'key'是必需的。 –

回答

1

只需要

Option Base 1 

Sub fun() 
    Dim Arr() As Collection 
    ReDim Arr(5) 
    Dim coll As New Collection 
    coll.Add 1 
    Set Arr(1) = coll 
End Sub