XL2000: Macro Stops Running When Its Workbook Is Closed (213591)



The information in this article applies to:

  • Microsoft Excel 2000

This article was previously published under Q213591

SYMPTOMS

In Microsoft Excel, if a macro closes a workbook (even its own workbook) that contains running macros, the macros stop running immediately. Depending on how your macros are written, this may cause problems.

CAUSE

This occurs in Microsoft Excel because macros in the workbook immediately halt execution when a workbook is closed.

This behavior is by design of Microsoft Excel.

RESOLUTION

This new behavior should only cause problems if a macro closes a workbook (even its own workbook) that contains a running macro. Look for the following commands in your macros:
ThisWorkbook.Close

-and-

ActiveWorkbook.Close
				

If your macros contain either of these commands, you may be closing workbooks that contain running macros. You should examine your macros to make sure you are not trying to run macro commands in a workbook after it is closed.

MORE INFORMATION

Microsoft provides programming examples for illustration only, without warranty either expressed or implied. This includes, but is not limited to, the implied warranties of merchantability or fitness for a particular purpose. This article assumes that you are familiar with the programming language that is being demonstrated and with the tools that are used to create and to debug procedures. Microsoft support engineers can help explain the functionality of a particular procedure, but they will not modify these examples to provide added functionality or construct procedures to meet your specific requirements. In versions of Microsoft Excel earlier than Excel 97, if you close a workbook that contains running macros, the workbook is not actually closed until the macros complete execution.

In Microsoft Excel 2000, the behavior is somewhat different. When the command to close a workbook executes, the workbook referenced in the macro closes immediately, and any macros it contains halt execution.

Modification Type:MinorLast Reviewed:10/11/2006
Keywords:kbdtacode kbprb kbProgramming KB213591