The tutorial demonstrates 4 quick ways to create an Excel data validation list (drop-down list) - 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. How to create an Excel drop-down list On the whole, there are 4 ways to make a drop down menu in Excel, and all of them have their own strong and weak points. Below you will find a quick outline of the main advantages and drawbacks as well as the detailed step-by-step instructions for each method:.
Check the box next to 'Developer' in the list if it is not checked. Click 'OK' 6. Go to the Developer tab on the Ribbon. Select Combo Box 8. Double-click on the newly-added element to add items to the drop-down. Press OK when you are finished. Press Protect Form when you wish to be able to select items in the drop-down. Here is where you type all of the items users can select from in the list. Enter the 'Display Name' for each individually, and the Value field is autopopulated. Click 'OK' to add each to the drop-down list. Click 'OK' to close the Control Control Properties window and return to the Word document with the drop-down list box populated.
Creating drop down lists with comma-separated values This is the fastest 3-step way to create a drop-down box in all versions of Excel 2016, 2013, 2010, 2007 and 2003. Select a cell or range for your drop-down list.
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. Use Excel Data Validation to create a drop-down list. On the Excel ribbon, go to the Data tab Data Tools group and click Data Validation. Enter the list items and choose the options.
In the Data Validation window, on the Settings tab, do the following:. In the Allow box, select List.
In the Source box, type the items you want to appear in your drop-down menu separated by a comma (with or without spaces). Make sure the In-cell dropdown box is checked; otherwise the drop-down arrow won't appear next to the cell. Select or clear the Ignore blank depending on how you want to handle empty cells. Click OK and you are done! Now, Excel users simply click an arrow next to a cell containing a dropdown box, and then select the entry they want from the drop down menu. 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. Creating an Excel drop-down list based on a named range 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. Type the entries for your drop-down list. 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. It's a good idea to sort your entries in the order you want them to appear in the drop-down menu. Create a named range. You can actually skip this step and create your drop-down list, 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. Excel 2003 and older require the dropdown list to be on the same worksheet. Apply Excel Data Validation. On the Excel ribbon, navigate to the Data tab and click Data Validation. Configure your drop-down list. In the Data Validation window, go to the Settings tab, and choose the following options:.
In the Allow box, select List. In the Source box, type the name you gave to your range preceded by an equal sign, for example =Ingredients. Make sure the In-cell dropdown box is checked.
Click the OK button to finish creating your drop-down list. If you are creating a, and that named range has at least one blank cell, selecting the Ignore blank box allows any value to be entered in the validated cell. If the source list contains more than 8 items, your drop-down box will have a scroll bar like this: Excel data validation list based on a table Instead of using a regular named range, you can convert your data to a fully functional ( Insert Table or Ctrl + T), and then create a data validation list from that table.
To do this, you either enter =yourtablenamecolumnname 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. Making a drop down box based on a range of cells Creation of an Excel drop-down box based on a range of cells is very similar to with only 2 differences:.
You skip. In, when configuring your drop-down list, instead of typing the range's name, click on the Collapse Dialog icon next to the Source box, and select all cells with the entries you want to include in your drop-down list.
They may be in the same or in a different worksheet. If the latter, you simply go to the other sheet and select a range using a mouse. Create a dynamic (automatically updated) Excel dropdown 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. If for some reason you prefer a usual named range, then reference it using the OFFSET formula, as explained below. You start by creating a usual as described above.
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:.
Sheet1 - the sheet's name. A - the column where the items of your drop-down list are located. $A$1 - the cell containing the first item of the list As you see, the formula is comprised of 2 Excel functions -. 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 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!
How this formula works 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. Creating a drop-down list from another workbook You can make a drop-down menu in Excel using a list from another workbook as the source. To do this, you will have to create 2 named ranges - one in the source book and another in the book where you wish to use your Excel Data Validation list. For the drop-down list from another workbook to work, the workbook with the source list must be open. A static dropdown list from another workbook 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.
Create a named range for the source list. 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. Create a named reference in the main workbook. 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!Sourcelist. You have to enclose the workbook's name in apostrophes (') if it contains any spaces. For example: ='Source Book.xlsx'!Sourcelist 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 dynamic dropdown list from another workbook A dropdown list created in this way will get updated on the fly once you've made any changes to the source list. Create a range name in the Source workbook with the OFFSET formula, as explained in. In the main workbook, apply Data Validation in the usual way. Excel Data Validation does not work The Data Validation option is greyed out or disabled?
There are a few reasons why that might happen:. 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. Additional options for the Excel drop-down box In most cases, the Settings tab's options we've discussed above absolutely suffice.
If they don't, two more options are available on the other tabs of the Data Validation dialog window. Display a message when a cell with the dropdown is clicked 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. The result in Excel will look similar to this: Allow users to enter their own data in a combo box 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. In the Data Validation dialog ( Data tab Data Validation), go to the Error Alert tab. 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. 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. An Information message is recommended if your users are likely to input their own choices quite often.
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. 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. 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.'
How to edit an Excel drop down list After you've created a drop-down list in Excel, you might want to add more entries to it or delete some of the existing items. How you do this depends on how your drop down box was created.
Editing a comma separated drop-down list If you've created a, proceed with the following steps:. 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. Click Data Validation (Excel ribbon Data tab). Delete or type new items in the Source box. Click OK to save the changes and close the Excel Data Validation window.
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. Editing a drop-down menu based on a range of cells 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.
Head over to spreadsheet containing the items that appear in your drop-down box, and edit the list in the way you want. Select the cell or cells containing your drop-down list. Click Data Validation on the Data tab. 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.
Click the OK button to save the changes and close the window. Editing an Excel drop-down list based on a named range If you have created a, 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. Add or delete items in the named range. Open the worksheet containing your named range, delete or type new entries. Remember to arrange the items in the order you want them to appear in your Excel drop-down list.
Change the reference to the Named Range. On the Excel ribbon, go to the Formulas tab Name Manager. Alternatively, press Ctrl + F3 to open the Name Manager window.
In the Name Manager window, select the named range you want to update. Change the reference in the Refers to box by clicking the Collapse Dialog icon and selecting all the entries for your drop-down list. Click the Close button, and then in the confirmation message that appears, click Yes to save your changes.
To avoid the necessity to update the named range's references after each change of the source list, you can create a. 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.
![List List](/uploads/1/2/5/4/125499297/285845149.png)
How to delete a drop-down list If you no longer want to have drop-down boxes in your Excel worksheet, you can remove them from some or all cells. Removing a drop-down menu from selected cell(s). Select a cell or several cell from which you want to remove drop down boxes. Go to the Data tab and click Data Validation. 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. Select any cell containing your drop-down list. Click Data Validation on the Data tab. In the Data Validation window, on the Settings tab, select the ' Apply these changes to all other cells with the same settings' check box. Once you check it, all of the cells referencing this Excel Data Validation list will get selected, as you can see in the screenshot below. Click the Clear All button to delete the drop-down list.
Click OK to save the changes and close the Data Validation window. This method deletes a drop-down list from all the cells containing it, retaining the currently selected values.
If you created a dropdown or, 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 with conditional Data Validation and how to create a drop-down box from another workbook. Please stay tuned and thank you for reading! You may also be interested in:. I have a list of actors and list of their respective films in a sheet, in another sheet I have the column Actors and Films column.
The user selects an actor from the dropdown list (about 4 lines long). Then a film is chosen from a dropdown list (about 15 lines long) of films about the chosen actor. I would like that, when a title film is selected this title will not be seen next time the user choose the same actor, but should be available for the next time the file is open or the 15 lines run out. Ideally a message should flash like 'That film has already been chosen, try another one'. Any help will be much appreciated. MY COMBOBOX KEEPS PUTTING TEXT IN A NUMBER CELL AND CHANGING THE CELL TEXT AND NOT A NUMBER.
Is there a fix for this? It is a activex combobox I have ZIP codes being pulled up in a INDEX & MATCH =INDEX(info,MATCH(E10,ZIP,0),6) E10 is where I drop the zip code in. If I type the zip code in it works perfect but if you I use the combobox it changes all my fields to N/A (city,state,etc). Each time I use the combobox to put the value in E10 I get a error symbol next to E10 'this cell is formatted as text' there is a drop down to convert it to a NUMBER and once I do that all the N/A in the fields goes away. PLEASE HELP and Thank You.
Hello, Svetlana Thank you, great blog if you could help with one more problem I would be grateful. I am trying to populate a data validation list based on a table that works as follows “Col A.” reps a State, “Col B.” City, “Column C.” Postal ZIP Code. No cells in table are blank i.e. A2:A5 = Mississippi then B2:B5 = Tupelo then C2 though C5 are different. Is there any way to make a Zip Code selection based on the City? The table has 9 States and 38 Cities and approximately 122 Zip Codes. Thank you again.
Hello there, this is a great post! Thank you so much. I have a query - What if there are multiple entires of first Cell in the table with different dependant values?
For Ex: Orange Fruit Tasty Oragne Color Good So the when I select first column as Orange, it should show up both Fruit and Color in second drop down. But since you INDEX, it only shows first match. How to make multiple entries show up? Any help will be greatly appreciated.
Again, thank you so much for the great blog. Hi There, This has been super helpful in creating my drop down menu. My only wish is that my employees could start typing an address and have it come up from the drop down menu? We have multiple addresses we need them to select from on a daily basis but I thought there may be a way for them to, for instance, type into the drop down menu (almost like a search, 1343 w would bring up 1343 Whitby- from the drop down menu?
We are trying to make it quicker and more accurate for myself when entering payroll. So that the guys stop making typo's on their addresses when entering their timesheets to which job they were working. I believe DEE (see above) is asking the same question. Thank you for your help!
Hi Svetlana Cheusheva, This article is super easy and very good. I created the drop down option from Data Validation options and it works perfect - I don't have to enter the category again and again anymore. I have a question regarding drop down list and auto fill to a different cell. My excel sheet is as below: Column B= Date Column C= Store Name Column D= Cost in USD Column E= Purpose (This is where my drop down list is choosen from, the Validation criteria list is obtained from Column S (List has Rent, Grocery (Cell=T12), Utility etc) So, I would like the Grocery Cell (T12 in column S) to fill automatically and get the cost updated ( up to date cost). Such as below: Data-Store Name-Cost-Purpose -Walmart-$26.50-Grocery -Sams Club-$16.50-Grocery -Walmart-$26.25-Grocery -Costco-$6.50-Grocery -Walmart-$10.50-Grocery 'Column S' & 'Cell T12' After Entry - T12=$26.50 After Entry - T12=$43.00 After Entry - T12=$69.25 After Entry - T12=$75.75 After Entry - T12=$86.25 Your help is very much appreciated and look forward to getting a result for this question.
Thank you, Sam Arthur. I'm in the end. I didn't find solution to my problem with drop down menu. The problem and question is, how to update already selected values from drop down menu, after that I changed original values in source table for drop down menu? Because in Excel I have a list of hardware in many worplaces. And from time to time when workplace will change name I need to change it in Excel too. And easiest way is to change/edit it in table for drop down menu, not to change it by add new workplace to table for drop down menu and then find hardware and select new work place from drop down menu.
But now, when aj change some values in table for drop down menu, this change is not reflected in my list. Just for sure: I'm not talking about adding new rows for drop down table.
Many templates and web forms use Word form fields to solicit information from the user. Occasionally, the selection in one field determines the contents of another. You can hard-code list items in a VBA procedure to populate the secondary (dependent) list. Or, you can retrieve the appropriate list items from a database. The latter is more dynamic, but requires more code and a database. For this example, we'll stick with the simpler solution and hard-code the items.
![Edit Edit](/uploads/1/2/5/4/125499297/549598452.png)
SEE: (TechRepublic) To illustrate this dependent list solution, we'll populate a primary list with region items: North, South, East, and West. Then, we'll use a VBA Select Case statement to populate a second list with a few states from the selected region. The first step is to create the user form and add a couple of form fields, as follows:. In Word, open a blank document and click the Developer tab.
(If you don't know how to enable the Developer tab, read. ). In the Controls group, click the Legacy Form dropdown and choose Drop-Down Form Field. Repeat step 2 to add a second dropdown field. (If you're still using Word 2003, the instructions are similar, but you'll need to display the Forms toolbar to access the controls. To do so, choose Toolbars from the View menu, and then select Forms.) Now you're ready to populate the first dropdown with the region items, as follows:.
Right-click the region dropdown field and choose Properties from the resulting submenu. In the Dropdown item control, enter North and click Add. Repeat to add South, East, and West. In the Bookmark control, enter ddRegion. Don't skip this step - when I receive mail about these types of techniques, more often than not the reader has missed this step.
You don't have to rename the dropdown field, you can retain the default, but giving it a descriptive and meaningful name will make the code easier to maintain. Next, right-click the state dropdown field and name it ddState (using the Bookmark control, as you just did to name the first dropdown ddRegion.) Click OK to close the dialog box. At this point, you have one populated dropdown named ddRegion and a second dropdown named ddState, that's still empty. To populate ddState, add the VBA procedure below, as follows:. Launch the Visual Basic Editor (VBE) by pressing Alt+F11. From the Insert menu, choose Module. Enter the PopulateddState sub procedure shown below.
Click Save on the Standard toolbar and then click Yes. Return to the Word document. Sub PopulateddState Select Case ActiveDocument.FormFields('ddRegion').Result Case 'North' With ActiveDocument.FormFields('ddState').DropDown.ListEntries.Clear.Add 'Michigan'.Add 'Ohio' End With Case 'South' With ActiveDocument.FormFields('ddState').DropDown.ListEntries.Clear.Add 'Georgia'.Add 'Texas' End With Case 'East' With ActiveDocument.FormFields('ddState').DropDown.ListEntries.Clear.Add 'New York'.Add 'Maine' End With Case 'West' With ActiveDocument.FormFields('ddState').DropDown.ListEntries.Clear.Add 'California'.Add 'Oregon' End With End Select End Sub You're almost done. You need to tell the state dropdown to execute the new procedure you just added, as follows:. Right-click ddRegion and choose Properties.
(Or, click Properties in the Controls group on the Developer tab.). From the Exit dropdown, choose PopulateddState. Just one last step. Before using the fields, enable protection, as follows:. Click the Developer tab and click Restrict Editing in the Protect Group. In the resulting task pane, click the Allow Only.
Option under 2. Editing Restrictions and choose Filling In Forms from that option's dropdown. Then, click Yes, Start Enforcing Protection under 3. Start Enforcement.
Enter the same password twice, and click OK. All that's left is to use the fields. Click the region field's dropdown and choose South. Doing so executes the sub procedure (macro) PopulateddStates, which populates the state dropdown with Georgia and Texas.
Remember, the list items are hard-coded. This method is certainly easy but with its ease comes limitations. It works best with a static list of known items.