Dropdown List Using Data Validation
Dropdown List Using Data Validation
based on a list of values, range of cells, named range and a dynamic dropdown. It also shows
how to create a dropdown from another workbook, edit and delete data validation lists.
Excel drop-down list, aka drop down box or combo box, is used to enter data in a spreadsheet
from a pre-defined items list. The main purpose of using drop down lists in Excel is to limit the
number of choices available for the user. Apart from that, a dropdown prevents spelling mistakes
and makes data input faster.
This is the fastest 3-step way to create a drop-down box in all versions of Excel 2016, 2013,
2010, 2007 and 2003.
You start by selecting a cell or cells where you want a drop-down box to appear. This can be a
single cell, a range of cells or the entire column. If you select the whole column, a drop down
menu will be created in each cell of that column, which is a real time-saver, for example, when
you are creating a questionnaire.
You can even select non-contiguous cells by pressing and holding the Ctrl key while selecting
the cells with the mouse.
Well, your drop-down box is ready in under a minute. This method works well for small Excel
data validation lists that are unlikely to ever change. If it's not the case, consider using one of the
following options.
This method of creating an Excel data validation list takes a bit more time, but it may save even
more time in the long run.
Select the entries you want to appear in your drop-down menu in an existing worksheet or type
the entries in a new sheet. These values should be entered in a single column or row without any
blank cells.
For example, let's create a drop-down list of ingredients for your favorite recipes:
Tip. It's a good idea to sort your entries in the order you want them to appear in the drop-down
menu.
You can actually skip this step and create your drop-down list based on a range of cells, but
named ranges really make managing Excel drop-down lists easier.
Select all the entries you want to include in the drop down list, right-click them, and
choose Define Name from the context menu. Alternatively, you can click Name Manager
on the Formulas tab or press Ctrl + F3.
In the Name Manager dialog, click New.
In the Name field, type a name for your entries, make sure the correct range is displayed
in the Refers to box, and then click OK. Be sure your range name doesn't have any spaces
or hyphens, use underscores (_) instead.
Tip. A faster way to create a named range in Excel is to select the cells and type the range name
directly in the Name Box. When finished, click Enter to save the newly created named range. For
more information, please see how to define a name in Excel.
Simply click in the cell where you want to have the drop-down list. This can be in the same sheet
where your list of entries is located or in a different worksheet. You can also select a range of
cells, or the entire column.
Note. Excel 2003 and older require the dropdown list to be on the same worksheet.
In the Data Validation window, go to the Settings tab, and choose the following options:
If the source list contains more than 8 items, your drop-down box will have a scroll bar like this:
Instead of using a regular named range, you can convert your data to a fully functional Excel
table (Insert > Table or Ctrl + T), and then create a data validation list from that table.
To do this, you either enter =your_table_name[column_name] in the Refers to field, or select all
of the cells without a column header before opening the Name Manager and have the Refers to
box filled automatically.
Why you may want to use a table? First and foremost, because it lets you create a dynamic
drop-down list that will update automatically as you add or remove items from the table.
Creation of an Excel drop-down box based on a range of cells is very similar to creating a drop-
down list based on a named range with only 2 differences:
If you often edit the items in the drop-down menu, you may want to create a dynamic drop down
list in Excel. In this case, your list will get updated automatically in all the cells that contain it,
once you remove or add new entries to the source list.
The easiest way to create such a dynamically updated drop-down list in Excel is by creating a
named list based on a table. If for some reason you prefer a usual named range, then reference it
using the OFFSET formula, as explained below.
1. You start by creating a usual dropdown based on a named range as described above.
2. In step 2, when creating a name, you put the following formula in the Refers to box.
=OFFSET(Sheet1!$A$1,0,0,COUNTA(Sheet1!$A:$A),1)
Where:
As you see, the formula is comprised of 2 Excel functions - OFFSET and COUNTA. The
COUNTA function counts all non-blanks in the specified column. OFFSET takes that number
and returns a reference to a range that includes only non-empty cells, starting from the first cell
you specify in the formula.
The main advantage of dynamic drop-down lists is that you won't have to change the reference to
the named range every time after editing the source list. You simply delete or type new entries in
the source list and all of the cells containing this Excel validation list will get updated
automatically!
In Microsoft Excel, the OFFSET(reference, rows, cols, [height], [width]) function is used to
return a reference to a range consisting of a specified number of rows and columns. To force it to
return a dynamic, i.e. continuously changing range, we specify the following arguments:
reference - cell $A$1 in Sheet1, which is the first item of your drop-down list;
rows & cols are 0 because you don't want to shift the returned range either vertically or
horizontally;
height - the number of non-empty cells in column A, returned by the COUNTA
function;
width - 1, i.e. one column.
The dropdown list created in this way won't update automatically when you add or remove
entries in the source list and you will have to modify the source list reference manually.
Open the workbook that contains the source list, SourceBook.xlsx in this example, and create a
named range for the entries you want to include in your drop-down list, e.g. Source_list.
Open the workbook in which you want the drop down list to appear and create a name that
references your source list. In this example, the completed reference is
=SourceBook.xlsx!Source_list
Note. You have to enclose the workbook's name in apostrophes (') if it contains any spaces. For
example: ='Source Book.xlsx'!Source_list
3. Apply Data Validation
In the main workbook, select the cell(s) for your drop-down list, click Data > Data Validation
and enter the name you created in step 2 in the Source box.
A dropdown list created in this way will get updated on the fly once you've made any changes to
the source list.
1. Create a range name in the Source workbook with the OFFSET formula, as explained in
Creating a dynamic drop-down.
2. In the main workbook, apply Data Validation in the usual way.
Drop-down lists can't be added to protected or shared worksheets. Remove the protection
or stop sharing the worksheet, and then try to click Data Validation again.
You are creating a drop down list from an Excel table that is linked to a SharePoint site.
Unlink the table or remove the table formatting, and try again.
If you want to show your users a pop up message when they click any cell containing your drop-
down list, proceed in this way:
In the Data Validation dialog (Data tab > Data Validation), switch to the Input Message
tab.
Make sure the option Show input message when cell is selected is checked.
Type a title and message in the corresponding fields (up to 225 characters).
Click the OK button to save the message and close the dialog.
By default, the drop-down list you create in Excel is non-editable, i.e. restricted to the values in
the list. However, you can allow your users to enter their own values.
Technically, this turns a drop-down list into an Excel combo box. The term "combo box" means
an editable dropdown that allows users to either select a value from the list or type a value
directly in the box.
1. In the Data Validation dialog (Data tab > Data Validation), go to the Error Alert tab.
2. Select the "Show error alert after invalid data is entered" box if you want to show an
alert when a user attempts to enter some data that is not in the drop-down menu. If you
don't want to show any message, clear this check box.
3. To display a warning message, pick one of the options from the Style box, and type the
title and message. Either Information or Warning will let the users enter their own text
in the combo box.
o An Information message is recommended if your users are likely to input their
own choices quite often.
o A Warning message will induce the users to select an item from the drop-
down box rather than enter their own data, though it does not prohibit custom
entries.
o Stop (default) will prevent people from entering any data that isn't in your Excel
drop-down list.
And this is how your customized warning message may look like in Excel:
Tip. If you are not sure what title or message text to type, you can leave the fields empty.
In this case, Microsoft Excel will display the default alert "The value you entered is not
valid. A user has restricted values that can be entered into this cell."
If you've created a comma separated drop down box, proceed with the following steps:
1. Select a cell or cells that reference your Excel Data Validation list, i.e. cells containing a
drop-down box that you want to edit.
2. Click Data Validation (Excel ribbon > Data tab).
3. Delete or type new items in the Source box.
4. Click OK to save the changes and close the Excel Data Validation window.
Tip. If you want to apply the changes to all the cells containing this drop-down list, select the
"Apply these changes to all other cells with the same settings" option.
If you have created a drop-down box by specifying a range of cells rather than referencing a
named range, then proceed in the following way.
1. Head over to spreadsheet containing the items that appear in your drop-down box, and
edit the list in the way you want.
2. Select the cell or cells containing your drop-down list.
3. Click Data Validation on the Data tab.
4. In the Excel Data Validation window, on the Settings tab, change the cell references in
the Source box. You can either edit them manually or click the Collapse Dialog icon.
5. Click the OK button to save the changes and close the window.
If you have created a named range based drop-down box, then you can just edit your range's
items and then change the reference to the Named Range. All drop-down boxes based on this
named range will get updated automatically.
Tip. To avoid the necessity to update the named range's references after each change of
the source list, you can create a dynamic Excel drop-down menu. In this case, your
dropdown list will get updated automatically in all associated cells as soon as you remove
or add new entries to the list.
1. Select a cell or several cell from which you want to remove drop down boxes.
2. Go to the Data tab and click Data Validation.
3. On the Settings tab, select the Clear All button.
This method removes the drop-down menus from the selected cells, but keeps the
currently selected values.
If you want to delete both a dropdown and the cells' values, you can select the cells and click the
Clear all button on the Home tab > Editing group > Clear.
Deleting an Excel drop-down list from all cells in the current sheet
In this way, you can remove a drop-down list from all associated cells in the current worksheet.
This won't delete the same drop-down box from cells in other worksheets, if any.
This method deletes a drop-down list from all the cells containing it, retaining the
currently selected values. If you created a dropdown based on a range of cells or based on
a named range, the source list will also remain intact. To remove it, open the worksheet
containing the drop-down list's items, and delete them.
Now you know the basics of Excel drop-down lists. In the next article, we will explorer this topic
further and I will show you how to create dependent drop down lists with conditional Data
Validation and how to create a drop-down box from another workbook. Please stay tuned and
thank you for reading!