In Excel: a standard Data Validation list stores one value per cell, so multiple selection needs a workaround — most commonly a Worksheet_Change macro that appends each new pick to the existing text (desktop Excel, saved as .xlsm), or one checkbox or helper column per option combined with TEXTJOIN. Excel for the web cannot create, run, or edit VBA macros. Open the workbook in the Excel desktop app to work with macros.
On this page7
Create the normal list first: Data ▸ Data Validation ▸ Allow: List with your options.
Right-click the sheet tab, choose View Code, and add a Worksheet_Change procedure limited to the list range.
In it, turn events off, capture the new value, use Application.Undo to read the previous value, and write both joined with ", ".
Turn events back on (also in an error handler), then save the workbook as .xlsm.
Without macros: give each option its own column of checkboxes or Yes/No cells and combine the ticked ones with =TEXTJOIN(", ",TRUE,IF(C2:E2=TRUE,$C$1:$E$1,"")) (TEXTJOIN needs Excel 2019 or later; in versions without dynamic arrays confirm this IF-array formula with Ctrl+Shift+Enter).
What this does
Data Validation lists are single-selection by design: choosing a second item replaces the first. There is no setting in the Data Validation dialog that changes this. To collect several choices in one cell you need something that remembers the previous value — an event macro that runs after each pick and joins old and new values — or a layout that stores each option separately and combines them with a formula. The macro route keeps the familiar arrow but only runs where VBA runs. Before the code does anything, check the environment it needs: desktop Excel, a macro-enabled workbook (.xlsm) and macros allowed for this file. If the workbook came by email or download, Office can block its macros until the file is trusted. The difference between a quick fix and a sheet you can trust is the extra minute you spend validating “select multiple dropdown excel”. Start on a copy or a tiny sample, keep the affected dropdown visible, and compare the result with the outcome you expected before you touch the real workbook. When this is a ribbon command, the selection matters more than the button: confirm the range, apply the command, then spot-check the output before saving. The point is a data step that keeps your analysis trustworthy, but the practical win is that someone else can open the file and understand what happened without asking you.
A worked example
Column B (B2:B100) has a list of Red, Green and Blue. With the macro below in the sheet's code module, picking Red and then Blue in B2 leaves "Red, Blue" in the cell. The macro: Private Sub Worksheet_Change(ByVal Target As Range) — if Target is one cell inside B2:B100, set Application.EnableEvents = False, store the new value, call Application.Undo to read the old value, write old & ", " & new (or just new when the cell was empty), then set Application.EnableEvents = True. Tags, skills and categories often need more than one value per row. Knowing that the standard list cannot do it saves time hunting for a setting, and choosing between a macro and a helper layout depends on where the workbook will be used. If the macro will be shared, add a comment at the top saying what it changes and which sheet it expects, and keep the workbook as .xlsm — saving it as .xlsx removes the code.
In Google Sheets
Google Sheets does not run VBA. A macro written for Excel has to be rewritten in Google Apps Script (Extensions ▸ Apps Script), and an .xlsm file converted to Sheets keeps its cells but drops the code. Keep this page bookmarked for the next time the same question comes up. Better still, repeat the steps once in your own workbook — doing it yourself is what turns a copied answer into something you remember. The short version of “select multiple dropdown excel”: paste the code, keep the workbook macro-enabled, trust the file only if you know where it came from, and test on a copy. Code that refers to the active sheet acts on whichever sheet is active, so check that before you run it.
Common mistakes
- Looking for a "multiple selection" option in the Data Validation dialog — there is none.
- Forgetting Application.EnableEvents = True in an error path, which silently stops every event macro in the workbook.
- Saving as .xlsx, which strips the macro.
- Expecting the macro to run in Excel for the web, the mobile apps or Google Sheets — VBA does not run there.
- Selecting the same item twice and getting it twice; add a check with InStr if duplicates matter.
Frequently asked questions
Can Excel's Data Validation allow multiple selections natively?
No. A Data Validation list holds one value per cell; multiple selection needs a macro or a separate layout.
Does the combined value break the validation rule?
Validation only checks typed entries, so a value written by the macro is kept even though "Red, Blue" is not in the list.
How do I count or filter cells with several selections?
Use a wildcard: =COUNTIF(B:B,"*Blue*") counts cells that include Blue among their selections.
Other ways people ask this
This is also commonly searched as “excel multiple select dropdown”, “excel multiple choice dropdown”, “excel dropdown multiple select” and “select multiple options in dropdown excel”. They describe the identical operation, so you are in the right place no matter how you phrased it.
Why do people search for this in so many different ways?
Because the same task has many names. “excel multiple select dropdown”, “excel multiple choice dropdown”, “excel dropdown multiple select” all point at the one operation explained on this page, which is why they all lead here.