Я пытаюсь преобразовать множественный выбор диапазона в массив диапазонов.Сплит-диапазон, содержащий несколько диапазонов в массив диапазонов?
Прямо сейчас это то, что я пытаюсь:
Private Function SplitRange(ByRef r As Range) As Range()
Dim i As Long
Dim RangesArray() As Range
Dim AddressArray() As String
Dim Address As Variant
i = 0
AddressArray = Split(r.Address, ",")
ReDim RangesArray(UBound(AddressArray))
For Each Address In AddressArray
Set RangesArray(i) = Range(Address)
i = i + 1
Next Address
' It works till this point, executing RangesArray(0).Address returns a range address
SplitRange = RangesArray
' Here for some reason neither SplitRange(0).Address or RangesArray(0).Address work
End Function
Как я могу преобразовать «соединение» диапазон в массив диапазонов?
'RangesArray (0) .Address' должно работать нормально (делает для меня). 'SplitRange (0) .Address' не будет работать, потому что он снова вызывает функцию' 0' как 'Range'. – Rory