Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
run-time error 9 VBA на некоторых компьютерах
 
Слегка похожая проблема
ответа в данной ветке так толком и не увидел

вот код:
Код
Sub FreeIpAddress()
 Dim IpAddressArray(), NetworkArray() As Variant
 Dim Cell As Range
 Dim k As Integer
 Dim v As Variant
 'cells to array v1
 IpAddressArray = Sheets("PublicIntList").Range("B2:B" & Sheets("PublicIntList").Cells(Sheets("PublicIntList").Rows.Count, "B").End(xlUp).Row).Value
 'cells to array v2 notEmpty
 k = 1
 'ReDim Preserve NetworkArray(300, 1)
 For Each Cell In Sheets("PublicIntList").Range("C:C").SpecialCells(xlCellTypeConstants)
  ReDim Preserve NetworkArray(k, 1)
  NetworkArray(k, 1) = Cell.Value
  'NetworkArray(k, 2) = Cell.Address
  k = k + 1
 Next
End Sub

на второй итерации цикла For Each выходит ошибка:

Subscript out of range

ругается на строку:

Код
ReDim Preserve NetworkArray(k, 1)

при этом, если k заменить на число, к примеру 300 (заведомо выше, чем требуется), то все работает норм
Код
ReDim Preserve NetworkArray(300, 1)
так то вроде "костыль" работает, но хотелось бы понять, почему переопределение массива через переменную не дает результата?
заранее спасибо
Изменено: Hamit - 13.03.2020 16:08:31
Страницы: 1
Наверх