The task eventually completes but the progress bar is useless.
For i=1 to imax ' imax is usually 30 or so fraction Done=cdbl(i)/cdbl(imax) Application.
The result should just look like a screen which is static, except that the results can be seen being added to the table. The screen 'jumps' because you are selecting cells - there's no need to select cells to act on them cells so you could just leave the screen 'focused' on your results table and screen refresh on. Paste Special Paste:=xl Paste Values, Operation:=xl None, Skip Blanks _ :=False, Transpose:=False Application.
For example, some code: Sorry, but actually, now that I think about it, I'm not sure how to apply your advice.
So instead of turning updating off altogether, is there a way I can tell Excel to hold the current screen frame while the macro runs? Here's what I want to accomplish, and some of the code I'm using (which is the result of a recorded macro, using relative references). I apologise if this is a bit long; I'd rather be too clear than not clear enough. This is fine as long as your macro is small, but if it is big, Screen Updating can take a long time, and turning it off can make VBA code run faster.
Let’s prove that: This code for me takes 0.64 seconds to run Now, lets turn off Screen Updating and see the difference: 0.64 seconds vs 0.078 seconds The faster VBA code runs 8 times the speed of the slow code.
I have a macro which gathers results from various places in a large sheet and value-pastes them into a table.