Ошибка выполнения 9: индекс выходит за пределы диапазона при доступе к простому массиву - PullRequest
1 голос
/ 04 октября 2019

Я столкнулся с проблемой, которую я не могу понять, используя основные функции массива. Я использую следующий (стандартный) код:

Sub CC()

Dim arrB As Variant
arrB = Sheet2.Range("B3:B100").Value2

Debug.Print LBound(arrB) & " " & UBound(arrB)
Debug.Print arrB(LBound(arrB))

End Sub

Первый оператор Debug.Print возвращает "1 98", как и ожидалось. Но когда я пытаюсь получить доступ к любым значениям в массиве arrB со своим вторым Debug.Print, я получаю ошибку времени выполнения 9 (индекс выходит за пределы диапазона). Есть идеи о том, что мне здесь не хватает?

1 Ответ

2 голосов
/ 04 октября 2019

Попробуйте:

Debug.Print arrB(LBound(arrB),1)

Для будущих задач с массивами - это было быстро, потому что раньше у меня было много проблем, самый простой способ справиться с массивами - Добавить на них наблюдение .

Таким образом, вы увидите, как это выглядит и сколько у него размеров:)

Я рад, что смог помочь:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...