This should certainly be the case as Excel doesn't have to continually redraw the screen each time something changes.
If we want to quantify how much time we've saved we can add some code to create a basic timer system.
However, there may be cases where you want your user to be able to see the whole worksheet during the execution of the code.
This means that if you run a different subroutine after the one above and you haven't added the line of code to disable screen updates to it, you'll be able to see the screen updating in the background.
You may have noticed that when running the procedure with screen updates disabled the subroutine appeared to run faster.
At the end of your sub you simply reset the status bar using the following statement: Application.
Status Bar = False You can use simple strings (like “Processing” or “Importing data” or “Step 1” or something else) or you display numbers like loop counters or percentages. Display the number of the current iteration or the current iteration and the total number of iterations or the percentage completed.
It's probably also worth changing the colour that we're using so that we can see when things have changed. This time you won't be able to see the macro carrying out its tasks; once the subroutine has finished the screen will update once at the end to show you the final result.
The Screen Updating property resets at the end of a procedure.
You can achieve this by using the Screen Updating property of the Application object.
To demonstrate the principle of this technique we'll need a small example procedure that makes lots of visible changes to the Excel workbook.
Even before I started to develop the speed comparison tool for the progress indicators described above, I had some expectations (or maybe gut feeling) of how the results would probably look like: Well, it turned out that some my assumptions were correct, but there were also some surprises I didn’t expect.
Now, let’s have a look at the results of a speed comparison test for 1,000 iterations: First, here are the results which fit to my expectations: Just a few things I learned.
The second option is to show the progress directly on the active worksheet: a simple text, a pseudo bar chart using the REPT function, a percentage value with a Conditional Formatting Data Bar, a standard bar chart or a faked bar chart with a freeform shape (see screenshot left).