ACC2000: Form Is Inaccessible When Debugging Run-Time Error

ID: Q210526


The information in this article applies to:

Moderate: Requires basic macro, coding, and interoperability skills.


SYMPTOMS

If a form calls a Visual Basic for Applications function that is halted because a run-time error occurred, you will not be able to access the form.


CAUSE

When a program halts because of a run-time error, the form's handle is not released by the system. Even though the program is no longer running, the handle is still in use.


RESOLUTION

To release the form handle after the program has halted, click Reset on the module's Run menu.


MORE INFORMATION

Steps to Reproduce Behavior

  1. Create and save a form with the following command button:


  2. 
       Object: Command Button
       ----------------------
       Caption: Run Code
       OnClick: =Test() 
  3. In a new module, create and save the following function named Test():


  4. 
    Function Test()
       Dim x as Integer
       x = 1 / 0
    End Function 
  5. Open the form that you created in step 1.


  6. Click the Run Code button. Note that the program will halt and that you receive the error message "Division by zero."


  7. Click Debug.


  8. Minimize the Visual Basic Editor.


  9. Try to click the Run Code button again, or try to move the form. Note that you cannot manipulate the form or anything on it. This is because the form handle is not available.


  10. To release the form handle after the program has halted, click Reset on the module's Run menu.


Additional query words: prb


Keywords          : kbprg kbdta PgmErr 
Version           : WINDOWS:2000
Platform          : WINDOWS 
Issue type        : kbprb 

Last Reviewed: May 13, 1999