Microsoft KB Archive/211759

= XL2000: List Box Click Event May Not Occur =

Article ID: 211759

Article Last Modified on 11/23/2006

-

APPLIES TO


 * Microsoft Excel 2000 Standard Edition

-



This article was previously published under Q211759





SYMPTOMS
When you create a macro and attach it to the Click event for a ListBox control, the macro may not run when you click the list box.



CAUSE
When you create a Click event macro that is attached to a ListBox control, the macro runs only when the value in the ListBox control changes. The Click event does not occur if you click the same value in the control.



RESOLUTION
To run a macro whenever you click a ListBox control, use another event, such as the MouseDown or MouseUp event. For more information, see the example in the "More Information" section later in this article.



MORE INFORMATION
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 uses the MouseUp event for a ListBox control on a user form:  Save and close all open workbooks, and then create a new workbook.  Enter the following on Sheet1:   A1: a   A2: b   A3: c                     Press ALT+F11 to start the Visual Basic Editor. On the Insert menu, click UserForm to insert a user form into the project. Draw a ListBox control on the user form and set the RowSource property to the following value:

Sheet1!A1:A3

</li> Double-click the ListBox control to display the module associated with the user form.</li>  Enter the following code for the MouseUp event: Private Sub ListBox1_MouseUp(ByVal Button As Integer, _        ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)

MsgBox "Current ListBox value: " & ListBox1.Value

End Sub </li> Run the user form.</li> Click any item in the list box.</li></ol>

A message box appears with the value of the currently selected item.

<div class="references_section">