Sub test()
Dim are(1 To 10000, 1 To 50) As Double
Dim r As Long, c As Long
For c = 1 To 50
For r = 1 To 10000
ar(r, c) = r + (c / 100)
Next
Next
Range(Cells(1, 1), Cells(10000, 50)).Value = ar
End Sub
Around this size it might be faster to start breaking down into smaller
arrays before dumping.
Regards,
Peter T
"aafraga" wrote in
message ...
Hello Excel Community,
For many years, I have been programming in EXCEL VBA and often use 2
dimensional arrays, usually of type Double of Variant. Normally, I
would declare the array such as :
Dim aMatrix(10000,50) as Double
Some math code would populate all the cells and I would then print the
aMatrix to a worksheet by nesting in a double loop:
for i...
for j...
Sheet1.Cells(i,j).Value = aMatrix(i,j)
The problem here is that Excel really slows down after a couple of
thousand.
Is there a fast way to bulk copy an array to a worksheet ?
I am looking for a function along the lines of
FastCopytoWorkSheet (aMatrix() as double, aRange as Range)
...
Is it best to just turn off screen updating or is there a more elegant
way ?
Many thanks and best regards,
Alberto
--
aafraga
------------------------------------------------------------------------
aafraga's Profile:
http://www.excelforum.com/member.php...o&userid=31314
View this thread: http://www.excelforum.com/showthread...hreadid=510013