How to Make a Searchable Drop-Down List in Excel
By ExcelReady TeamUpdated 5 min read
The short answer
To make a searchable drop-down list in Excel, put a search box in one cell and a helper formula elsewhere: =FILTER(A2:A8,ISNUMBER(SEARCH(D1,A2:A8)),"No match") lists only the items containing the typed text. Then point data validation at that spill range, such as =$F$2#. Recent Microsoft 365 versions can also narrow a plain drop-down as you type.
Key takeaways
- FILTER with ISNUMBER(SEARCH(…)) keeps the items that contain the search text, in any position.
- A blank search box shows the whole list, because SEARCH finds empty text everywhere.
- Data validation can use a spill range as its source: =$F$2#, with the # sign.
- The FILTER method needs Excel 2021 or Microsoft 365; recent Microsoft 365 versions can also search drop-downs as you type.
- Use LEFT(…)=D1 instead of SEARCH when items should start with the search text.
On this page+
- Does Excel have a searchable drop-down built in?
- Step 1: List the matching items with FILTER and SEARCH
- Step 2: Point the drop-down at the spill range
- Step 3 (optional): Search inside the drop-down cell itself
- How to sort results or match the start of the text
- Searchable drop-downs in older Excel
- Why isn't my searchable drop-down working?
- Practise it
A searchable drop-down list in Excel lets you type a few letters and pick from only the items that match, instead of scrolling through hundreds of names. A standard drop-down can't do this in older versions, but a short FILTER and SEARCH formula can: it lists the matching items, and data validation turns that list into the drop-down. This guide builds one step by step, and also covers the built-in search in recent Microsoft 365 versions.
All the examples use this product list in A2:A8, with a search cell in D1:
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Product | Search: | desk | |
| 2 | Desk Lamp | |||
| 3 | Floor Lamp | |||
| 4 | Office Chair | |||
| 5 | Standing Desk | |||
| 6 | Desk Organizer | |||
| 7 | Monitor Arm | |||
| 8 | Chair Mat |
Does Excel have a searchable drop-down built in?#
In recent versions of Microsoft 365 and Excel for the web, yes: when you start typing in a cell that has a drop-down list, the list can narrow to the items that match. If you have that, try it first, because it needs no extra setup. Make a normal drop-down with Data > Data Validation > List, as shown in the guide to data validation drop-down lists, then type a few letters in the cell.
Older versions don't do this, and you can't control how the built-in search matches. If the file will be opened in older Excel, or you want matching anywhere in the text, build the formula version below.
Step 1: List the matching items with FILTER and SEARCH#
The heart of a searchable drop-down is a formula that returns only the items containing the search text. In F2, type:
=FILTER(A2:A8,ISNUMBER(SEARCH(D1,A2:A8)),"No match")With "desk" in D1, three items spill down from F2: Desk Lamp, Standing Desk and Desk Organizer. Here is what each part does:
SEARCH(D1,A2:A8)looks for the search text inside every product. It returns the position where it was found, such as 1 or 10, or #VALUE! when it isn't there.ISNUMBER(…)turns positions into TRUE and errors into FALSE.FILTER(A2:A8,…,"No match")keeps the TRUE rows, and shows "No match" when nothing matches.
SEARCH is not case-sensitive, so "desk" finds "Desk". When D1 is empty, SEARCH finds the empty text in every item, so the whole list shows. That is exactly what you want before anyone types. The FILTER, SEARCH and ISNUMBER function guides explain each one, and the article on filtering rows that contain text shows more ways to use this pattern.
FILTER needs Excel 2021 or Microsoft 365.
Step 2: Point the drop-down at the spill range#
Now turn the results into a drop-down. Select the cell that should hold the drop-down, such as D2, then:
- Go to Data > Data Validation.
- Under Allow, choose List.
- In Source, type
=$F$2#and click OK.
The # after F2 means "the whole spill range starting at F2", however many rows it has. Type "lamp" in D1 and the drop-down in D2 offers only Desk Lamp and Floor Lamp. Clear D1 and it offers all seven products. The guide to dynamic drop-down lists explains spill ranges as list sources in more detail.
To keep the sheet tidy, put the helper formula on another sheet or in a hidden column. A data validation source can point to another sheet, as shown in how to use a drop-down list from another sheet.
Step 3 (optional): Search inside the drop-down cell itself#
You can use one cell for both typing and picking, with one change. Make the FILTER formula search the drop-down cell itself, such as SEARCH(D2,A2:A8), and set D2's list source to =$F$2#. Then:
- In Data Validation, open the Error Alert tab.
- Untick Show error alert after invalid data is entered and click OK.
Now you can type "desk" in D2 and press Enter. The list narrows, and clicking the arrow shows only the three matches. Pick one to replace your typed text. The trade-off: with the error alert off, D2 also accepts text that isn't on the list, so a separate search cell is safer for shared files.
How to sort results or match the start of the text#
Two small changes make the list nicer to use:
- Sorted results. Wrap the formula in SORT:
=SORT(FILTER(A2:A8,ISNUMBER(SEARCH(D1,A2:A8)),"No match")). The matches now read Desk Lamp, Desk Organizer, Standing Desk. - Starts with instead of contains. Replace the SEARCH test with LEFT:
=FILTER(A2:A8,LEFT(A2:A8,LEN(D1))=D1,"No match"). With "desk", this returns only Desk Lamp and Desk Organizer, because Standing Desk doesn't start with desk.
To show how many items match, add a count next to the search box with a wildcard: =COUNTIF(A2:A8,"*"&D1&"*") returns 3. The * wildcards mean "any text before or after". You can practise wildcards and cell-based criteria in a live sheet.
Searchable drop-downs in older Excel#
Without FILTER, the same idea needs more work. A common approach is a helper column that marks each matching item, such as =IF(ISNUMBER(SEARCH($D$1,A2)),ROW(),""), then an INDEX and SMALL formula that lists the marked items one by one. The drop-down then points to that list. It works, but it is longer to build and maintain. If everyone has Microsoft 365, the FILTER method or the built-in search is much simpler.
For lists that depend on another choice, such as products within a chosen category, see the guide to dependent drop-down lists.
Why isn't my searchable drop-down working?#
When the list doesn't narrow, check these:
- The source has no
#.=$F$2gives a one-item list. Use=$F$2#. - Something blocks the spill. If F3 or below holds data, the formula shows #SPILL! and the list breaks. Clear the cells below the formula.
- "No match" appears as an option. That is the FILTER fallback text. Change it to "" if you'd rather show an empty list.
- Errors when typing in the drop-down cell. Data validation is rejecting partial text. Use a separate search cell or turn off the error alert.
- Extra spaces in the source list. "Desk Lamp " with a trailing space still matches a search, but it looks like a duplicate. Clean the list with TRIM.
Practise it#
A searchable drop-down is FILTER plus a text test. Practise the FILTER function in a live spreadsheet, then practise wildcards and cell-based criteria for partial matches. Each lesson checks your formula as soon as you type it. Then try the exercise on this page to list the products that contain "desk".
Try it yourself
This is a live spreadsheet. Type the formula in the green cell and press Enter.
D1 holds the search text desk. In F2, list the products that contain it: =FILTER(A2:A8,ISNUMBER(SEARCH(D1,A2:A8)),"No match").
| A | B | C | D | E | F | G | |
|---|---|---|---|---|---|---|---|
| 1 | Product | desk | Matches | ||||
| 2 | Desk Lamp | ||||||
| 3 | Floor Lamp | ||||||
| 4 | Office Chair | ||||||
| 5 | Standing Desk | ||||||
| 6 | Desk Organizer | ||||||
| 7 | Monitor Arm | ||||||
| 8 | Chair Mat | ||||||
| 9 | |||||||
| 10 | |||||||
| 11 |
Tip: SEARCH looks for D1 inside each product, ISNUMBER turns found positions into TRUE, and FILTER keeps those rows. Three products spill: Desk Lamp, Standing Desk and Desk Organizer.
Practise this in a lesson
Frequently asked questions
Can you make a drop-down list searchable in Excel?
Yes. Recent Microsoft 365 versions can narrow a drop-down list as you type in the cell. In other versions, use a search cell, a FILTER formula that lists matching items, and a data validation list that points to that formula's spill range.
How do I make a drop-down list filter as I type?
Use a helper formula such as =FILTER(A2:A8,ISNUMBER(SEARCH(D1,A2:A8)),"No match"), where D1 is the search cell. Set the drop-down's data validation source to the spill range, like =$F$2#. Type in D1 and the list narrows.
Why does my searchable drop-down show an error when I type part of a word?
If you type into the drop-down cell itself, data validation rejects text that isn't an exact list item. Use a separate search cell, or turn off the error alert in the Data Validation dialog.
Does a searchable drop-down work in Excel 2016?
The FILTER method does not, because FILTER needs Excel 2021 or Microsoft 365. In older versions, use a helper column that marks matching items and a formula that lists them, or a form control.
Is the search case-sensitive?
No. SEARCH ignores capitals, so desk finds Desk Lamp. Use FIND instead of SEARCH if you need a case-sensitive match.