Today’s author is Reinout Dorreboom from the Netherlands, a Technical Consultant at Getronics, where he has worked with Office applications for many years, and where his Microsoft Certified Training skills enabled him to help other people get up to speed with Excel.
In Excel 2007 (and earlier), it’s possible to create a drop-down list. By using the INDIRECT function, you can then create additional drop-down lists that are conditional to the first drop-down list.
In this example we’ll create the following table:
Columns B, C, and D contain drop-down lists. If you select Netherlands in the drop-down list in column B, only Dutch cities will be displayed in the drop-down list in Column C. If you select Germany, only German cities will be displayed in the drop-down list in Column C. Similarly, when you select a city in Column C, only the street names of that city will be displayed in column D.
To create conditional lists, complete the following procedures.
Enter the data
First, we’ll create the table as shown below.
Now, we’ll create a few lists.
First, we’ll create a list of countries. In this example, we create the following countries:
As you can see I made a horizontal list instead of a vertical list. This isn’t really necessary, but it is easier to maintain to keep the cities under the right country.
Second, we’ll add three cities to pick from for each country.
Now, we’ll create a list of streets for each city. In the example, you can then choose from two streets per city.
The worksheet should look like this now:
Define the names
Ok, all content is provided. Now we can start creating a name for each range.
For information about how to define names, see Define and use names in formulas.
Create the drop-down lists
After defining the names, we can create the drop-down lists.
First, we’ll make a drop-down list for Country.
1. Select cell B2.
2. On the ribbon, click the Data tab.
3. In the Data Tools group, click Data Validation.
4. Fill the values as follows:
In the Allow box, select List.
In the Source box, type =$F$1:$H$1
Note: Dollar signs ($) are used in the formula so that we can drag the cell downwards from David to Peter.
5. Click OK.
6. Drag the cell content downwards.
Now, we’ll make the first conditional drop-down list.
1. Select Cell C1.
2. On the ribbon, click the Data tab.
3. In the Data Tools group, click Data Validation.
4. Fill the values as follows:
In the Allow box, select List.
In the Source box, type =INDIRECT($B2)
Note: In the formula, a Dollar sign ($) is not placed before the row. That is because we want to drag the cell formula downwards.
5. Click OK.
Note: If you click OK, you may get an error message indication that the evaluation of the formula was an error. This is correct, because the cell where this list depends on (B2) is empty.
6. Drag the cell content downwards.
Now, we’ll make our second conditional drop-down list.
1. Select cell D2.
2. On the ribbon, click the Data tab.
3. In the Data Tools group, click Data Validation.
4. Fill the values as follows:
In the Allow box, select List.
In the Source box, type =INDIRECT($C2)
Note: In the formula, a Dollar sign ($) is not placed before the row. That is because we want to drag the cell formula downwards.
5. Click OK.
Note: If you click OK, you may get an error message indicating that the evaluation of the formula was an error. This is correct, because the cell on which this list depends (C2) is empty.
6. Drag the cell content downwards.
Done!
If you choose a country, the City field displays only cities for that country. And only streets for the selected city will be shown.
Code/Templates/Informaiton provided on this site are without any liabilities. Owner of this website in no event will be held reponsible to damages resulting by using the code/templates/applications/
Copyright © 2003 xlMacros.com - Learn Excel VBA
Microsoft Excel is a U.S. registered trademark of Microsoft Corporation
Excel Password Cracker Addin.
For $10 Today. Price back to $20 tommorow.
Never Worry About Lost Excel Passwords!!!
Remove Excel Password - the easy way has never been easier than this.