bottom
Great ExcelTips!
         
Your e-mail address is safe!
Close Note

Tips.Net > ExcelTips Home > Macros > VBA Examples > Using the Status Bar

Using the Status Bar

Summary: Your macros can use the status bar area, at the bottom of the Excel window, to display messages. This is normally done to post status messages that indicate the progress of your macro. This tip explains how you can put information on the status bar in your own macros. (This tip works with Microsoft Excel 97, Excel 2000, Excel 2002, and Excel 2003.)

Typically, one of the first things you do when you create a macro is use a command that turns off updating the screen display. This is done because the macro will run faster when it does not have to update the screen. When this is done, one of the most important things you can do is provide feedback to the user so they don't think their system has gone out to lunch.

A common method of providing feedback is through the use of the status bar. Using VBA, this is done with a code line similar to the following:

Application.StatusBar = "Updating past months..."

This line causes the message Updating past months... to be displayed on the status bar of the application program. This message remains there until another message is written to the status bar, either by your macro or by Excel.

If you want to erase the message on the status bar, there are two ways you can do it. The first is to write an empty string to the status bar, as in the following code:

Application.StatusBar = ""

In this case, there is nothing between the quote marks, so an empty string is displayed on the status bar, erasing whatever was there before. The other method is to use the following line:

Application.StatusBar = False

Writing the logical value FALSE to the Application.StatusBar property erases whatever you wrote on the status bar before and restores the default status bar text.

Using the status bar is all fine and good, as long as the status bar is turned on. Excel can be customized, by the user, so that the status bar is turned off. If this has been done, then you cannot display messages on the status bar. The solution is to make sure the status bar is turned on before you try to display a message.

You can control the display of the status bar by using the Application.DisplayStatusBar property. If you set this property to a logical value (TRUE or FALSE), it turns the status bar on or off.

As an example of how to program this sort of process, consider the following code:

bStatusState = Application.DisplayStatusBar
Application.DisplayStatusBar = True
Application.StatusBar = "Updating past months..."
'
' Rest of program goes in here
'
Application.StatusBar = False
Application.DisplayStatusBar = bStatusState

The very first line of this code assigns the current value of the status bar (TRUE or FALSE, meaning on or off) to the variable bStatusState. This same variable is used in the last line to reset the status bar condition to its original state. In between, the status bar is turned on and a message is displayed and later erased.

Tip #2296 applies to Microsoft Excel versions: 97 | 2000 | 2002 | 2003


Tame Your Data! ExcelTips: Filters and Filtering provides all the details necessary to let you manage large sets of data with confidence and ease. Its information-packed pages demonstrate how to use the two types of filters provided by Excel: AutoFilters and advanced filters.
 
Check out ExcelTips: Filters and Filtering today!

Helpful Links

Ask an Excel Question
Make a Comment

Tips.Net Home
Vital News Home

ExcelTips FAQ
ExcelTips Premium

Learn Access Now

Beauty Tips
Bugs and Pests Tips
Car Tips
Cleaning Tips
College Tips
Cooking Tips
Excel2007 Tips
ExcelTips
Family Tips
Gardening Tips
Health Tips
Home Tips
Money Tips
Organizing Tips
Pet Tips
Word2007 Tips
WordTips

Advertise on the
ExcelTips Site

 

Great Info!

Get tips like this every week in ExcelTips, a free productivity newsletter. Enter your e-mail address and click "Subscribe."
     
(Your e-mail address will never be shared with anyone, ever.)