Status Bar does not display in Excel 7.0

G

Guest

When running macros in Excel 7.0 that were built in Excel 2003, the status
bar messages do not display. Status bar messages are critical when
troubleshooting new macros or when troubleshooting macros that do not work as
well in Excel 2007 as they did in previous Excel versions.

One way around it is to enable update display but that greatly slows down
the macro.

All the macros I have run in Excel 7.0 exhibit this same problem.
 
D

Don Guillett

You didn't say how you did it 2003 but here is the xl95 help on it. I have
found that when you need something to run in multiple versions it is best to
develop in the earliest version instead of the latest. I have a client that
has users that only have xl95 so I develop for the lowest common
denominator..

This example sets the status bar text to "Please be patient..." before it
opens the workbook LARGE.XLS, and then it restores the text to the default.

oldStatusBar = Application.DisplayStatusBar
Application.DisplayStatusBar = True
Application.StatusBar = "Please be patient..."
Workbooks.Open filename:="LARGE.XLS"
Application.StatusBar = False
Application.DisplayStatusBar = oldStatusBar

This example adds a new menu item to the Help menu in the Visual Basic
Module menu bar and then sets the status bar text, the Help filename, and
the Help context ID for the new menu item (note that the HelpFile and
HelpContextId properties are available only in Windows).

Set menuObj = MenuBars(xlModule).Menus("Help")
Set newMenuItem = menuObj.MenuItems.Add(Caption:="&Read Me First", _
OnAction:="readmeMacro", _
Before:=1)
newMenuItem.StatusBar = "Read this topic before you begin"
newMenuItem.HelpFile = "C:\xl5\vba_xl.hlp"
newMenuItem.HelpContextID = 65535
 
G

Guest

Thanks Don. Here is typically what I have been doing for years:

savestatusbar = Application.DisplayStatusBar
Application.DisplayStatusBar = True
Application.ScreenUpdating = False

Application.StatusBar = chg & " repairs changed to CRF"

Application.DisplayStatusBar = savestatusbar
Application.ScreenUpdating = True

Pretty much what you showed in your example. But the only way I can get the
message to appear now is to turn screenupdating on immediately before
application.statusbar and then turn it back off after the message is
displayed. My various macros may update the statusbar100's of times or more
during macro execution. Some of the macros are 350k in length. The reason I
updated to 7.0 was to take advantage of the larger number of available rows.

But, macros that worked fine before, seem to have a problem now and then.
And without the statusbar working to show where the macro is, I am having a
terribly difficult time troubleshooting them. Some may run for 20 minutes.

I don't know what I could be doing wrong. The macros still work fine in the
older version of Excel.

Any advice is appreciated Don.

Frank
 
T

Tom Ogilvy

Excel 7.0 is Excel 95 which is the version Don got the help from.

You are now appear to be talking about Excel 2007 which is Excel 12.0 and is
still in BETA test mode.
 
G

Guest

Tom, You are correct. I apologize. I shouldn't have made that assumption.
Yes, I am speaking of the Excel version that is a part of Office 2007. I
appreciate you clearing that up. You were probably tipped off when I
happened to mention the larger number of rows now available.

Thank you Tom!

Frank
 
G

Guest

Hi Frank,

This issue with the statusbar should be fixed in Excel 2007 B2TR which is
available for download now. Give it a try, and let me know if it's still
not working the way you'd expect.

Cheers,
Dan
Excel Team

Note: We've only got a couple weeks to get bugs filed and fixed, so if I've
requested additional info via email, it'd be great if you can get that to us
ASAP. Please include any necessary sample files, as well as detailed repro
steps so that we can try to reproduce the problem on our side. Also - if
you're emailing me directly (definitely the most efficient at this point)
you'll want to fixup my email address to remove everything after danbatt and
before the @.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top