我想通過「切斷」前5個條目來重新定義一維數組,因爲它們必須被刪除以用於以後的邏輯。一維數組的ReDim會拋出'下標超出範圍'
- 我創建從查詢
- 設定的記錄予填充陣列記錄()作爲變體(大小爲147)。 現在:sizeSet = daoRst3的大小
- 我嘗試刪除數組recordset的前五個元素。
代碼:
Set daoRst3 = gDB.OpenRecordset("SELECT * FROM TEST")
For i = 0 To daoRst3.Fields.Count - 1
ReDim Preserve recordSet(0 To i)
If daoRst3.Fields(i).Value = Empty Then
recordSet(i) = 0
Else: recordSet(i) = daoRst3.Fields(i).Value
End If
Next
'First five values in record set are not needed anymore.
ReDim Preserve recordSet(5 To i - 1)
最後一行
ReDim Preserve recordSet(5 To i - 1)
拋出 「下標超出範圍」。我已經調試過,現在我是148。
可能是什麼問題?
非常感謝提前!
無論如何,你是在誤解Redim。即使成功,'Redim(5到10)'也不會刪除前5個條目,但它會從最後切換並更改索引基礎。 –