How to Query Selected Values in an Access Multivalued Field
Question details
The user needs to filter and query database records based on values selected in a list box that match a multivalued field in Microsoft Access.

- Product
- Microsoft Access
- Device & OS
- not provided
- Scenario
- Attempting to query records containing specific checked values in a multivalued field via a list box selection.
- Observed behavior
- Treating multivalued fields like standard fields or list boxes causes crashes and incorrect query results because they are stored as hidden related collections.
Ensure you create a backup of your Access database before modifying complex SQL queries or altering table structures.
Query the Multivalued Field's Value Property
To correctly filter records based on selected list-box items, you must target the hidden Value property of the multivalued field and match it using an IN expression.
Multivalued fields cannot be queried as simple text strings. Because Access stores them as related collections in the background, you must explicitly reference the '.Value' property to evaluate the individual checked items.
Use VBA to loop through the ItemsSelected collection of your list box and construct a comma-separated string of the chosen values.
Navigate to the Query Design view in Access and switch to SQL View, or prepare to modify your VBA SQL string.
In your WHERE clause, append '.Value' to the name of your multivalued field (for example, [Categories].Value).
Complete the WHERE clause by adding the IN operator followed by your generated comma-separated list, such as: WHERE [Categories].Value IN (1, 2, 4).

Replace the Multivalued Field with a Junction Table
For better long-term stability and easier querying, consider migrating away from multivalued fields to a standard relational database model using a junction table.
Need a Lightweight Suite for Your Documents and Spreadsheets?
While WPS Office does not offer a direct database alternative to Microsoft Access, it is the perfect free, lightweight solution for all your standard office tasks. Easily manage your documents, spreadsheets, and presentations with full Microsoft Office compatibility.
- 1. Download the installer: Visit the official WPS Office website and download the free version for your operating system.
- 2. Install WPS Office: Run the installer and follow the simple on-screen instructions to set up the suite in minutes.
- 3. Open your existing files: Seamlessly open, edit, and save your existing Office files without losing any formatting.

Frequently Asked Questions
Why does my Access database crash when querying a multivalued field?
Access stores multivalued fields as hidden related tables rather than simple scalar values. Treating them like normal text strings or ordinary list boxes in SQL queries can confuse the database engine, leading to application crashes or inaccurate results.
How do I check if a specific item is checked in a multivalued field?
You must query the field's underlying value. Add '.Value' to your field name in the query design, and set the criteria to match the specific item. For example, use 'WHERE [YourFieldName].Value = "TargetItem"'.
Are multivalued fields considered good practice in database design?
While they provide a quick and user-friendly way to handle multiple selections in simple desktop databases, professional developers usually avoid them. They complicate queries and make it difficult to migrate your database to more robust platforms like SQL Server.
How can I group records by a multivalued field?
To group query results based on the selections in a multivalued field, you must include the '.Value' property in your SQL GROUP BY clause. This allows Access to properly aggregate the underlying related collection.




