XL98: Macro Assigned to List Box Fails (192220)



The information in this article applies to:

  • Microsoft Excel 98 Macintosh Edition

This article was previously published under Q192220

SYMPTOMS

When you click an item in a list box or a drop-down list box control, the macro that you assigned to the list box or drop-down list box fails to run.

CAUSE

This behavior occurs when the following conditions are true:
  • You add a list box or a drop-down list box control to a worksheet and assign a Selection Type of Single or Extended to the control. -and-

  • You assign a macro to the list box or a drop-down list box. -and-

  • The item you click in the list box or drop-down list box is the only item in the control. -or-

  • You consecutively click the same item in the list box or drop-down list box. (That is, the currently selected item is not changed.)

WORKAROUND

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. To work around this behavior, use one of the following methods.

Method 1

Make sure that the list box or drop-down list box contains at least two items and that you select an item that is different from the currently selected item.

Method 2

When you format the control (double-click the control), use the Multi Selection Type property. This selection type allows the macro to detect a change in the status of the list box.

Method 3

Set or reset the ListIndex property to 0. For example, use the following line of code:
     ActiveSheet.ListBoxes(1).ListIndex = 0
				

MORE INFORMATION

A list box can run a macro based on the changes that occur in that list box. When you select an item that is different from the current selection, a single or extended list box is changed. Therefore, if the list box contains only one item, or if you reselect the same item, the macro is not run.

Modification Type:MajorLast Reviewed:6/17/2005
Keywords:kbbug kbdtacode kbpending kbProgramming KB192220