Еще одна тема с многомерным массивом и Redim Preserve, я знаю. Я прочитал их много, но до сих пор не могу понять, почему мой код не работает.
Я знаю, что вы можете расширить только последнее измерение, и это то, что я хочу: добавить новый столбец в мой 2D-массив.
Чтобы изолировать проблему, я тестирую 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.
Может ли кто-нибудь объяснить мне?