Да, вы можете сделать это, создав именованные диапазоны.Просто выберите целый диапазон ячеек, последовательных / матричных или более единичных, и введите имя в поле (как показано ниже) в поле «Имя» рядом со строкой формулы ...
Матрица

Спорадическая

Затем из вашего кода вы можете просто ссылаться на этот диапазон и все его ячейки ...
Dim objRange As Range
Set objRange = Range("MyRange")
Когда вы добавляете в него строки или столбцы или даже однослойные ячейкидиапазон, они будут выбраны автоматически.
Чтобы редактировать свой диапазон, используйте функцию ниже или, в качестве альтернативы, просто вставьте строки или столбцы в пределах диапазона, как вы обычно делаете, когда хотите добавить данные в ранее существующие областив пределах листа.

Пример ...
Public Sub Test()
Dim objRange As Range, objCell As Range
Set objRange = Range("MyRange")
For Each objCell In objRange
Debug.Print objCell.Value
Next
End Sub
С учетом вышеизложенного убедитесь, что у вас открыто окно "Немедленно" в пределахVBA, чтобы увидеть результаты отладки.
В вашем случае попробуйте это ...
Public Sub Test()
Dim bFileAccessGranted As Boolean, objRange As Range, objCell As Range, arrValues() As Variant, lngIndex As Long
Set objRange = Range("MyRange")
lngIndex = -1
For Each objCell In objRange
lngIndex = lngIndex + 1
ReDim Preserve arrValues(lngIndex)
arrValues(lngIndex) = objCell.Value
Next
bFileAccessGranted = GrantAccessToMultipleFiles(arrValues)
End Sub
Надеюсь, это поможет.