Please Note: This article is written for users of the following Microsoft Excel versions: 2007, 2010, and 2013. If you are using an earlier version (Excel 2003 or earlier), this tip may not work for you. For a version of this tip written specifically for earlier versions of Excel, click here: Turning Off Screen Updating.

Turning Off Screen Updating

by Allen Wyatt
(last updated January 10, 2017)


Many people write their own macros to manipulate the information in a workbook. Many times the macro may do quite a bit with the data, such as selecting different cells, replacing values or formulas, and taking other types of actions. This means that the Excel screen can look like it has "gone crazy" while the macro is running.

One thing you may want to do with your macro to make it run faster and to prevent distracting flashes on the screen is to turn off screen updating while the macro is running. The following macro lines will, respectively, turn off screen updating and then turn it back on in a VBA macro.

Application.ScreenUpdating = False
Application.ScreenUpdating = True

The idea is to use the first line near the beginning of your macro, and then use the second line near the end. Thus, the main body of your macro can do its work behind the scenes without the necessity of stopping to update the screen.


If you would like to know how to use the macros described on this page (or on any other page on the ExcelTips sites), I've prepared a special page that includes helpful information. Click here to open that special page in a new browser tab.

ExcelTips is your source for cost-effective Microsoft Excel training. This tip (9151) applies to Microsoft Excel 2007, 2010, and 2013. You can find a version of this tip for the older menu interface of Excel here: Turning Off Screen Updating.

Author Bio

Allen Wyatt

With more than 50 non-fiction books and numerous magazine articles to his credit, Allen Wyatt is an internationally recognized author. He is president of Sharon Parq Associates, a computer and publishing services company. ...


Grabbing a User's Name from Excel

One of the settings you can make in Excel is to specify a user's name. This name is accessible through macros, and can ...

Discover More

Adding Buttons to Your Worksheet

You can easily add a button to your worksheet that will allow you to run various macros. This tip shows how easy it is.

Discover More

Word Won't Capitalize Some Sentences

By default, Word capitalizes the first letter of sentences as you type. If you notice that Word doesn't capitalize some ...

Discover More

Professional Development Guidance! Four world-class developers offer start-to-finish guidance for building powerful, robust, and secure applications with Excel. The authors show how to consistently make the right design decisions and make the most of Excel's powerful features. Check out Professional Excel Development today!

More ExcelTips (ribbon)

Converting Strings to Numbers

When working with data in a macro, there are two broad categories you can manipulate: numbers and text. Sometimes you ...

Discover More

Forcing Manual Calculation For a Workbook

If you have a large, complex workbook, you may want to make sure that it is always calculated manually instead of ...

Discover More

Trimming Spaces from Strings

Need to get rid of extraneous spaces before or after the text in a string? VBA provides three different functions you can ...

Discover More

FREE SERVICE: Get tips like this every week in ExcelTips, a free productivity newsletter. Enter your address and click "Subscribe."

View most recent newsletter.


If you would like to add an image to your comment (not an avatar, but an image to help in making the point of your comment), include the characters [{fig}] in your comment text. You’ll be prompted to upload your image when you submit the comment. Maximum image size is 6Mpixels. Images larger than 600px wide or 1000px tall will be reduced. Up to three images may be included in a comment. All images are subject to review. Commenting privileges may be curtailed if inappropriate images are posted.

What is five minus 4?

2018-08-04 02:26:23


I am unable to work on excel while it pulls the external web data ( refresh every 1 minute )....My requirement is to work on another worksheet of the same workbook...I need to wait for 15-20 seconds until excel pulls the external web data....How could we able to deal with this?
Or is there any way if I could temporarily stop external web data connection Without closing file?...Like on / off toggle or stuff like that....

2017-11-30 15:58:09

John Nicholson

I have a macro I wrote for Excel 2003 using the Application.ScreenUpdating = False and the Application.ScreenUpdating = True commands. Worked perfectly in 2003 but does not work in 2013 or 2016.

2017-01-10 10:19:20

Dave Bonin

I've written several macro programs that take a while to execute. Some are for my use and some for use by many. This is my good practice...

Tell the user what's going on and provide an indication of progress, ideally every three to ten seconds.

For example, one program I alone use takes about 40 seconds to execute across 12 similar sheets. In that case, I update the status bar message every time the code starts on the next sheet. I also momentarily turn screen updating on and then off again to show each sheet as it processes. Much better than staring at an unchanging screen for 40 seconds (that would be like watching the microwave for 40 seconds -- it takes forever).

Another program for others runs through about 25 steps. For that, I post and update a userform for each step with a text message with the elapsed time, the number and name of each step, and a progress bar. It shows the user that progress is being made. Also, if the program quits, a screen snapshot tells me where the macros quit working on that user's computer.

2017-01-10 09:48:15

Wim Torfs

There is one thing to be aware of. Don't use "Exit Sub", instead use "GoTo EndOfMacro" and place this code before "End Sub".
Application.ScreenUpdating = True
The same goes for all you do with "Application.***"

2015-10-08 07:32:13

Petr Pechacek

Note: Windows 8+, Excel 2010+, use DoEvents for updating StatusBar with ScreenUpdating = False.

2014-02-17 09:34:57

Spence Wikel

A simple and less involved method of providing progress updates would be to use the following line of code in the macro:
Application.StatusBar = "Processing... Please Be Patient."
The Application.StatusBar text can be updated with anything throughout the macro - plain text, calculated completion precentages, elapsed time, etc.
Prior to "End Sub", place this last line of code:
Application.StatusBar = False
[Note: Even if Application.ScreenUpdating = False, the statusbar will change.]

2014-02-17 09:07:49

Barry Fitzpatrick

This does the side effect that it looks as though Excel has "hung" or crashed, especially if the macros is going to take some time to execute.

For long macros I would advocate displaying a Userform saying "Please Wait" and for very long macros showing a progress bar or percentage complete, and maybe even a "Cancel" button to exit before completion.

This Site

Got a version of Excel that uses the ribbon interface (Excel 2007 or later)? This site is for you! If you use an earlier version of Excel, visit our ExcelTips site focusing on the menu interface.

Newest Tips

FREE SERVICE: Get tips like this every week in ExcelTips, a free productivity newsletter. Enter your address and click "Subscribe."

(Your e-mail address is not shared with anyone, ever.)

View the most recent newsletter.