The Screen Updating property controls most display changes on the monitor while a procedure is running. Five hundred lines of text are added to the document.
You could do this: ' turn off updates ' Organise data in ram so that it fits the range for which it is meant Dim two_d_arr (rows,cols) load Data From Source two_d_arr Dim destination Range as Range destination Range = Sheets(some Sheet). number of cells updated), and how many sheets are there, how many sheets/cells refer to sheet your code is updating and how many formulas are present in the whole workbook. Screen Updating = False '-----------------------My code Application. Just make sure you reset Screen Updating to true when you're finished running the macro.
Remarks Turn screen updating off to speed up your macro code.
You won't be able to see what the macro is doing, but it will run faster.
One more thing to consider for perfomance is Calculation property, set this to xl Calculation Manual to turnn off the auto recals and turn it back to xl Calculation Automatic at the end.
One more thing to conside is Events, if one or more of those sheets have Worksheet_Chnage or Worksheet_Calculate event handlers each change that your code is doing will trigger them and your code need to wait till they return. On Error Go To lbl Error Dim b Events As Boolean, i Calc As Integer, b Scrn Upd As Boolean b Events = Application.
You can increase the speed of some procedures by keeping screen updating turned off. Insert Paragraph After End With If x Mod 50 = 0 Then Active Document.