Всем доброго дня!
Я соорудил макрос, который формирует гиперссылки на основании Id ссылки (столбец D).
Вот сам макрос:
Sub Ссылки()
' Создаю переменную и присваиваю ей статическую часть ссылки
Dim ssilka As String
ssilka = Sheets("Data").Range("A10").Value
Dim i As Integer
Dim iLastRow As Integer
' узнаю номер последней непустой строки, и присваиваю цифру переменной
iLastRow = Cells(Rows.Count, 4).End(xlUp).Row
' запускаю цикл и формирую ссылки в столбце "С"
For i = 11 To iLastRow
Sheets("Активация").Hyperlinks.Add Anchor:=Cells(i, 3), Address:=ssilka & Cells(i, 4), TextToDisplay:="Ссылка"
Next i
End Sub
Все бы было хорошо, но есть одна проблема, если строк несколько тысяч и если в других листах есть еще данные, то на формирование одной ссылки уходит почти секунда, весь массив может отрабатываться до 15 минут.
Подскажите, есть ли другой способ провести эту же операцию, но быстрее?
Возможно ли например загрузить весь массив в переменную типа Variant, обработать каждый элемент массива и потом выгрузить в ячейки?
Прошу прощения, если вопрос задан не корректно, я в VBA не силен.
Я соорудил макрос, который формирует гиперссылки на основании Id ссылки (столбец D).
Вот сам макрос:
Sub Ссылки()
' Создаю переменную и присваиваю ей статическую часть ссылки
Dim ssilka As String
ssilka = Sheets("Data").Range("A10").Value
Dim i As Integer
Dim iLastRow As Integer
' узнаю номер последней непустой строки, и присваиваю цифру переменной
iLastRow = Cells(Rows.Count, 4).End(xlUp).Row
' запускаю цикл и формирую ссылки в столбце "С"
For i = 11 To iLastRow
Sheets("Активация").Hyperlinks.Add Anchor:=Cells(i, 3), Address:=ssilka & Cells(i, 4), TextToDisplay:="Ссылка"
Next i
End Sub
Все бы было хорошо, но есть одна проблема, если строк несколько тысяч и если в других листах есть еще данные, то на формирование одной ссылки уходит почти секунда, весь массив может отрабатываться до 15 минут.
Подскажите, есть ли другой способ провести эту же операцию, но быстрее?
Возможно ли например загрузить весь массив в переменную типа Variant, обработать каждый элемент массива и потом выгрузить в ячейки?
Прошу прощения, если вопрос задан не корректно, я в VBA не силен.