Ms access listbox multiselect simple vs. extended

Applies to

ListBox Object

You can use the MultiSelect property to specify whether a user can make multiple selections in a list box on a form and how the multiple selections can be made. Read/write Byte.

expression.MultiSelect

expression Required. An expression that returns one of the objects in the Applies To list.

ListBox MultiSelect Property – Syntax

Please find the below syntax of ListBox Multi Select Property in Excel VBA.

ListboxName.MultiSelect=0 – frmMultiSelectSingle

Or

ListboxName.MultiSelect=1 – frmMultiSelectMulti

Or

ListboxName.MultiSelect=2 – frmMultiSelectExtended

Where ListboxName represents the ListBox object. In the above syntax we are using a ‘MultiSelect’ property of ListBox object to select listbox items based on user choice.

ListBox MultiSelect Property – Explanation & Example

Here is the example for ListBox Multi Select Property. It will take you through how to align M Select property of list box using Excel VBA. Here you can find or see how we are enable or disable Multi Select of list box manually or using code.

ListBox MultiSelect Property: Change Manually

Please find the following details how we are changing manually Multi Select of listbox property.

  1. Go To Developer Tab and then click Visual Basic from the Code or Press Alt+F11.
  2. Go To Insert Menu, Click UserForm. Please find the screenshot for the same.
  3. Drag a Listbox on the Userform from the Toolbox.
  4. Right click on the List box. Click on properties from the available list.
  5. Now you can find the properties window of listbox on the screen. Please find the screenshot for the same.
  6. On the left side find ‘MultiSelect’ property from the available List Box properties.
  7. On the right side you can find the list of available choices. You can choose one of the following. . Please find the below screen shot for your reference.
  8. a. 0 – frmMultiSelectSingle
    b. 1 – frmMultiSelectMulti
    c. 2 – frmMultiSelectExtended

    ListBox MultiSelect Property: Change Using Code

    Please find the following details how we are changing Multi Select of listbox property with using Excel VBA code.

    1. Go To Developer Tab and then click Visual Basic from the Code or Press Alt+F11.
    2. Go To Insert Menu, Click UserForm. Please find the screenshot for the same.
    3. Drag a Listbox on the Userform from the Toolbox. Please find the screenshot for the same.
    4. Double Click on the UserForm, and select the Userform event as shown in the below screen shot.
    5. Now can see the following code in the module.
    6. Private Sub UserForm_Initialize[] End Sub
    7. Now, add the following example code1 or code2 or code 3 to the in between above event procedure.
    8. Example Code1:

      'MultiSelect Property of ListBox Control Private Sub UserForm_Initialize[] With UserForm1.ListBox1 'ListBox Source Data .RowSource = "A2:B10" 'The below statement will show header in each column .ColumnHeads = True 'The following statement represents number of columns .ColumnCount = 2 'ListBox text items appear left side .MultiSelect = 0 End With End Sub
    9. Now, Press ‘F5’ to see the following Output.
    10. Output: If MultiSelect =0 – frmMultiSelectSingle
      Please find the below output when we set Multi Select property value is ‘0’. It is shown in the following Screen Shot.

      Example Code2:

      'MultiSelect Property of ListBox Control Private Sub UserForm_Initialize[] With UserForm1.ListBox1 'ListBox Source Data .RowSource = "A2:B10" 'The below statement will show header in each column .ColumnHeads = True 'The following statement represents number of columns .ColumnCount = 2 'ListBox text items appear left side .MultiSelect = 1 End With End Sub
    11. Now, Press ‘F5’ to see the following Output.
    12. Output: If MultiSelect =1 – frmMultiSelectMulti
      Please find the below output when we set Multi Select property value is ‘1’. It is shown in the following Screen Shot.

      Example Code3:

      'MultiSelect Property of ListBox Control Private Sub UserForm_Initialize[] With UserForm1.ListBox1 'ListBox Source Data .RowSource = "A2:B10" 'The below statement will show header in each column .ColumnHeads = True 'The following statement represents number of columns .ColumnCount = 2 'ListBox text items appear left side .MultiSelect = 2 End With End Sub
    13. Now, Press ‘F5’ to see the following Output.
    14. Output: If MultiSelect =2 – frmMultiSelectExtended
      Please find the below output when we set Multi Select property value is ‘2’. It is shown in the following Screen Shot.

databasedev.co.uk - database solutions and downloads for microsoft access

Microsoft Access Articles

  • General Microsoft Access Articles
  • Microsoft Access 2007 Articles
  • Tables
  • Queries
  • SQL
  • Forms
  • Reports
  • Macros
  • Modules & VBA
  • Data Models
  • Downloads

GUI Design

  • GUI Design Examples
  • Submit Your Examples

Resources

  • Resources
  • Database News
  • Knowledge Base
  • Microsoft Access Products, Tools & Add-In's

Online Shop

  • UK Visitors
  • US Visitors

Info

  • Contact Us
  • Advertise With Us
  • Link To Us
  • Write For Us
  • Competitions

Use a multi-select list box to filter a report

This article explains how to use a multi-select list box to select several items at once, and open a report limited to those items.

With a normal list box or text box, you can limit your report merely by placing a reference to the control in the Criteria row of its query, e.g. [Forms].[MyForm].[MyControl]. You cannot do that with a multi-select list box. Instead, loop through the ItemsSelected collection of the list box, generating a string to use with the IN operator in the WHERE clause of your SQL statement.

This example uses the Products by Category report in the Northwind sample database.

The steps

  1. Open the Northwind database.
  2. Open the query named Products by Category in design view, and add Categories.CategoryID to the grid. Save, and close.
  3. Create a new form, not bound to any table or query.
  4. Add a list box from the Toolbox. [View menu if you see no toolbox.]
  5. Set these properties for the list box:
    NamelstCategory
    Multi SelectSimple
    Row Source TypeTable/Query
    Row SourceSELECT Categories.CategoryID, Categories.CategoryName
    FROM Categories ORDER BY Categories.CategoryName;
    Column Count2
    Column Widths0
  6. Add a command button, with these properties:
    NamecmdPreview
    CaptionPreview
    On Click[Event Procedure]
  7. Click the Build button [...] beside the On Click property. Access opens the code window.
  8. Paste the code below into the event procedure.
  9. Access 2002 and later only: Open the Products by Category report in design view. Add a text box to the Report Header section, and set its Control Source property to:
    =[Report].[OpenArgs]
    The code builds a description of the filter, and passes it with OpenArgs. See note 4 for earlier versions.

Video liên quan

Chủ Đề