MultiSelect Property

Applies To

ListBox control.

Description

Indicates whether the object permits multiple selections.

Syntax

object.MultiSelect [= fmMultiSelect]

The MultiSelect property syntax has these parts:

Part

Description

object

Required. A valid object.

fmMultiSelect

Optional. The selection mode that the control uses.


Settings

The settings for fmMultiSelect are:

Constant

Value

Description

fmMultiSelectSingle

0

Only one item can be selected (default).

fmMultiSelectMulti

1

Pressing the SPACEBAR or clicking selects or deselects an item in the list.

fmMultiSelectExtended

2

Pressing SHIFT and clicking the mouse, or pressing SHIFT and one of the arrow keys, extends the selection from the previously selected item to the current item. Pressing CTRL and clicking the mouse selects or deselects an item.


Remarks

When the MultiSelect property is set to Extended or Simple, you must use the list box's Selected property to determine the selected items. Also, the Value property of the control is always Null.

The ListIndex property returns the index of the row with the keyboard focus.

See Also

ListIndex property, Selected property, Value property.

Example

The following example uses the MultiSelect and Selected properties to demonstrate how the user can select one or more items in a ListBox. The user specifies a selection method by choosing an option button and then selects an item(s) from the ListBox. The user can display the selected items in a second ListBox by clicking the CommandButton.

To use this example, copy this sample code to the Declarations portion of a form. Make sure that the form contains:

  • Two ListBox controls named ListBox1 and ListBox2.
  • A CommandButton named CommandButton1.
  • Three OptionButton controls named OptionButton1 through OptionButton3.
    Dim i As Integer
    
    Private Sub CommandButton1_Click()
        ListBox2.Clear
        
        For i = 0 To 9
            If ListBox1.Selected(i) = True Then
                ListBox2.AddItem ListBox1.List(i)
            End If
        Next i
    
    End Sub
    
    Private Sub OptionButton1_Click()
        ListBox1.MultiSelect = fmMultiSelectSingle
    End Sub
    
    Private Sub OptionButton2_Click()
        ListBox1.MultiSelect = fmMultiSelectMulti
    End Sub
    
    Private Sub OptionButton3_Click()
        ListBox1.MultiSelect = fmMultiSelectExtended
    End Sub
    
    Private Sub UserForm_Initialize()
        For i = 0 To 9
            ListBox1.AddItem "Choice " & (ListBox1.ListCount + 1)
        Next i
        
        OptionButton1.Caption = "Single Selection"
        ListBox1.MultiSelect = fmMultiSelectSingle
        OptionButton1.Value = True
        
        OptionButton2.Caption = "Multiple Selection"
        OptionButton3.Caption = "Extended Selection"
        
        CommandButton1.Caption = "Show selections"
        CommandButton1.AutoSize = True
    End Sub