The okk Цитата: А вообще, кто какие знает способы, как оптимизировать VBA (v 6.3) код по быстродействию?
Например, использование массивов может сильно ускорить занесение данных на лист Excel'я.
В качестве иллюстрации, сравни работу двух процедур (массив 1000x100 заносится в ячейки листа):
Код: Dim intArr(1 To 1000, 1 To 100) As Integer
Dim i As Integer: Dim j As Integer
Private Sub GenArr()
Randomize
For i = 1 To 1000
For j = 1 To 100
intArr(i, j) = Fix(Rnd + 0.5)
Next j
Next i
End Sub
Public Sub Variant1()
GenArr
Worksheets(1).Cells.Clear
For i = 1 To 1000
For j = 1 To 100
Worksheets(1).Cells(i, j).Value = intArr(i, j)
Next j
Next i
End Sub
Public Sub Variant2()
GenArr
Worksheets(1).Cells.Clear
Worksheets(1).Range(Cells(1, 1), Cells(1000, 100)).Value = intArr
End Sub