我試圖用工作表中的數據填充動態數組。我得到「錯誤9下標超出範圍」。爲什麼?錯誤9下標超出範圍
Sub correct()
Dim row As Integer, i As Long
Dim constants() As Double 'this declares the dynamic array
row = 1
i = 0
ReDim constans(0) 'this resizes the array(rediminsion's the array)
Do Until ThisWorkbook.Sheets("Deg 4").Cells(row, 1).Value = ""
constants(i) = ThisWorkbook.Sheets("Deg 4").Cells(row, 1).Value
i = i + 1 'increments array index
ReDim Preserve constants(i) 'resize the array 1 larger and preserves previous data
row = row + 1 'increments the worksheet row
Loop
End Sub
感謝您對陳述式ReDim的建議。它之前並沒有引起我的注意,但是預先警告過的是前臂式的。我將來不會被它愚弄! –
感謝這真的有所幫助,也感謝關於ReDim的警告。我只使用ReDim,因爲它是我知道如何創建動態數組的唯一方法。使用ReDim是否是更好的方法? –
不,這是使用它的方式 - 只要你拼寫正確的數組名稱! –