Knowledge Base

Public/Global Variables Not Maintained After Error

Article ID: 155457

Article Last Modified on 10/10/2006


APPLIES TO


This article was previously published under Q155457

SYMPTOMS

When you run a Microsoft Excel Visual Basic for Applications macro that contains a public variable, Excel reinitializes the public variable if an error condition halts the execution of the macro. This is different behavior from earlier versions of Microsoft Excel and Visual Basic for Applications.

CAUSE

The mode that stops the code execution, but keeps the stack variables was removed.

MORE INFORMATION

In earlier versions of Microsoft Excel and Visual Basic for Applications, there is a mode in the internal code that stops the code execution but keeps the stack variables. This is by design of Visual Basic for Applications.

In Microsoft Excel 97 and Excel 98, this mode was removed from the internal code to make it consistent with all other Visual Basic for Applications programs. When Visual Basic for Applications encounters an error that halts a macro, it resets the project stack, including all public variables.

REFERENCES

For more information about public variables, click the Index tab or button in Microsoft Excel Help, type the following text

variables, declaring

and then double-click the selected text to go to the "Public Statement" topic.

Additional query words: vbe XL97 XL98 vba XL

Keywords: kbdtacode kbprogramming KB155457