在VBA中,我將值存儲到稱爲PidArr
的動態數組中,名爲Unlock
。陣列開始,如:傳遞動態數組:空值
Dim PidArr() As String
ReDim PidArr(1 To 2)
數據獲取插入看起來像:
...within a loop
PidArr(Count) = LineStr 'this is a string containing the data.
Logging "Inserted " & PidArr(Count) 'this correctly shows the data has inserted.
ReDim PidArr(1 To Count + 1) 'resize the array more
值正確地存儲到該陣列之後,另一個函數(提前)稍後被調用(以及PidArr
陣列進入到它)
Advance listRecords:=PidArr
函數看起來象:
Sub Advance(ByRef listRecords() As String)
在Advance
我可以打印類似:
UBound(listRecords)
,它返回一個6
但是,當我嘗試打印出來的值像listRecords(1)
或listRecords(2)
等,沒有被打印出來(空白) 。
這是爲什麼?它不會崩潰,所以根本不是數組中的無效範圍。
你必須告訴我們相關的代碼。就像它被填充的位置,它傳入的位置以及Advance子例程中的內容。 – RBarryYoung
此VBA託管什麼應用程序? – RBarryYoung
@RBarryYoung BostonWorkStation – JBurace