簡體   English   中英

我如何聲明一個數組數組?

[英]How do I declare an array of arrays?

我已經多次在這個問題上用Google搜索,但找不到有效的方法。
我想聲明一個未指定長度的數組數組(arrArr)。 實際上,我使用Excel:如果工作表存在,則獲取其數組並將其存儲在數組數組中。 我已經這樣聲明了這個arrArr,程序基本上是這樣工作的:

dim arrArr as Variant
if sheetIsFound then
    sheetsFound = sheetsFound + 1
    arrArr(sheetsFound) = arrayOfTheSheet
end if

但它不起作用:debug表示該數組為空。 我的(病態)邏輯怎么了?

謝謝

當您說dim arrArr()時,數組沒有邊界。 您必須將其重新設置為所需的號碼。 如果要保留現有項目,則需要keep關鍵字。 您可以添加監視並逐步執行代碼以查看每個步驟中發生的情況。

嘗試這個:

Dim arrArr() As Variant
ReDim arrArr(0) 'make an array with 1 item
If sheetIsFound Then
    sheetsFound = sheetsFound + 1
    ReDim Preserve arrArr(0 To (UBound(a) + 1)) 'add an index to the array
    arrArr(UBound(a)) = arrayOfTheSheet ' add the array to the new index in arrArr
End If

要訪問數組,請使用語法arrArr(0),arrArr(1)等。

如果您需要更多幫助,此頁面提供了一些示例: http : //www.brainbell.com/tutors/Visual_Basic/Arrays.htm

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM