不斷收到「索引超出範圍」錯誤

不斷收到「索引超出範圍」錯誤

所以我主要使用java和C++,VBA對我來說很新。我很困惑為什麼我不斷收到錯誤 9 - “索引超出範圍”。這是代碼:

Dim count As Integer
Dim j As Integer

count = months.count

Dim monthsArr() As String
ReDim monthsArr(1, count)

For j = 1 To count
    monthsArr(j) = months.Item(j)
Next j

計數等於 10(我用 msgBox 檢查過),所以月份是長度為 10 的 ArrayList。我在這一行不斷收到錯誤:

monthsArr(j) = months.Item(j)

我以為 VBA 對集合使用 1 索引,但我真的不知道。有人知道為什麼我總是收到此錯誤嗎?謝謝

答案1

您已將尺寸重新調整monthsArr為二維數組ReDim monthsArr(1, count)。如果它應該保留為二維數組,那麼當您為其分配元素時,也必須顯示數組在兩個維度上的哪一部分。您只使用一個:monthsArr(j) = months.Item(j)。它應該類似於數組的第二個維度在monthsArr(j,i) = months.Item(j)哪裡。i

另請注意,0 是數組中的第一個,而不是 1 monthsArr(1,count)。 。

如果它不是二維數組而是一維數組,那麼您應該使用:ReDim monthsArr(count)ReDim monthsArr(count-1)作為從 0 開始的數組。

相關內容