Microsoft KB Archive/166093

= XL97: Invalid Page Fault Using DropDown Method with ComboBox =

Article ID: 166093

Article Last Modified on 11/23/2006

-

APPLIES TO


 * Microsoft Excel 97 Standard Edition

-



This article was previously published under Q166093





SYMPTOMS
When you use the DropDown method in a Visual Basic for Applications procedure to display the list of a ComboBox, you may receive the following error message:

This program has performed an illegal operation and will be shut down.

If the problem persists, contact the program vendor.

If you click Details, an error message similar to the following appears:

EXCEL caused an invalid page fault in module FM20.DLL at

0137:600390a2.

and Microsoft Excel quits.



CAUSE
This problem occurs when the following conditions are true:
 * You have a Visual Basic procedure attached to the Click event or the Change event of a ComboBox control in a UserForm. - and -


 * The Visual Basic procedure attempts to set the focus to, and then display the list of another ComboBox control on the UserForm.



WORKAROUND
Microsoft provides programming examples for illustration only, without warranty either expressed or implied, including, but not limited to, the implied warranties of merchantability and/or fitness for a particular purpose. This article assumes that you are familiar with the programming language being demonstrated and the tools used to create and debug procedures. Microsoft support professionals 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 needs. If you have limited programming experience, you may want to contact a Microsoft Certified Partner or the Microsoft fee-based consulting line at (800) 936-5200. For more information about Microsoft Certified Partners, please visit the following Microsoft Web site:

https://partner.microsoft.com/global/30000104

For more information about the support options that are available and about how to contact Microsoft, visit the following Microsoft Web site:

http://support.microsoft.com/default.aspx?scid=fh;EN-US;CNTACTMS

The following example illustrates how to display the list of one ComboBox control when you make a choice in the list of another ComboBox control on a UserForm.

Populating the ListBox Directly from Worksheet Cells
 Close and save any open workbooks. Then, open a new workbook. On Sheet1, enter the following values:

A1: Planes C1: Alpha

A2: Trains C2: Bravo

A3: Automobiles C3: Charlie

 Start the Visual Basic Editor, (press ALT+F11). If the Properties window is not visible, click Properties on the View menu (or press F4). On the Insert menu, click Module.  In the code window for the module, type the following procedure: Sub DropDown_ComboBox UserForm1.ComboBox2.DropDown End Sub </li> On the Insert menu, click UserForm.</li> Draw a ComboBox control on the UserForm.</li>  Change the following properties of the ComboBox control to the following values: <pre class="fixed_text">      Property          Value --      RowSource         Sheet1!A1:A3 </li> Double-click the ComboBox to open the code window for the ComboBox.</li>  In the module, type the following code for the ComboBox Click event: Private Sub ComboBox1_Click Application.OnTime Now, "DropDown_ComboBox" End Sub </li> Draw another ComboBox control on the UserForm.</li>  Change the following properties of the ComboBox control to the following values: <pre class="fixed_text">      Property          Value --      RowSource         Sheet1!C1:C3 </li> Run the UserForm.</li></ol>

When you click an item in the list of ComboBox1, the list for ComboBox2 is automatically displayed.

<div class="status_section">

STATUS
Microsoft has confirmed this to be a problem in the Microsoft products listed at the beginning of this article.

<div class="references_section">