然而,隨着多維數組另一個話題和REDIM保留,我知道了。我讀了很多但仍不明白爲什麼我的代碼無法正常工作。問題與REDIM保留(二維數組)
我kwow,你只能延長最後一個維度,這是我想要的:添加新列到我的二維數組。
爲了找出問題,我測試2代碼:
Sub test_Redim_Preserve()
Dim arr() As Variant
ReDim arr(10, 10)
ReDim Preserve arr(UBound(arr,1), UBound(arr,2) + 1)
End Sub
這項工作很好
Sub test_Redim_Preserve2()
Dim arr() As Variant
ReDim arr(10, 10)
arr = Range("A1:J10")
ReDim Preserve arr(UBound(arr,1), UBound(arr,2) + 1)
End Sub
這給我一個錯誤。 我只是給了一個範圍來填充我的數組,然後我不能將它改變。我不明白缺少接受Redim的是什麼。
有人能解釋一下嗎?
好吧,我現在明白了。我在想,我範圍內的第一個值會到達arr(0,0),但它會轉到arr(1,1)。感謝您的解釋和解決方案。 –