how to create dependent dropdown list in Excel

m_vishal_c

Board Regular
Joined
Dec 7, 2016
Messages
209
Office Version
  1. 365
  2. 2016
Platform
  1. Windows
Hi,
i need to create dynamic dependant dropdown list in excel like below

Unique Aged Care NameAged Care NameDoctor Name
ABJohn
BBwilliam
CAPeter
D

Unique Aged Care Name is all Aged Care Names, Aged Care Name is dropdown to select Aged care.

I need dependant dropdown list like if I select B as Aged Care Name then "John", and "William" should come to another column

I just need to create in Excel not macro

Heaps thanks
 

Excel Facts

Can a formula spear through sheets?
Use =SUM(January:December!E7) to sum E7 on all of the sheets from January through December
Hi M_Vishal_C,

Like this?

M_Vishal_C.xlsx
ABCDEFGH
1Unique Aged Care NameAged Care NameDoctor NameSelect Aged Care NameSelect DoctorLoV Build
2ABJohnBwilliamJohn
3BBwilliamwilliam
4CAPeter 
5D 
6 
7 
Sheet1
Cell Formulas
RangeFormula
H2:H7H2=IFERROR(INDEX($C$2:$C$9999,AGGREGATE(15,6,ROW($C$2:$C$9999)-ROW($C$1)/($B$2:$B$9999=$E$2),ROW()-ROW($C$1))),"")
Cells with Data Validation
CellAllowCriteria
E2List=$A$2:$A$5
F2List=OFFSET($H$2,,,COUNTIF($H$2:$H$999,"> "))
 
Upvote 0
Solution
Hi M_Vishal_C,

Like this?

M_Vishal_C.xlsx
ABCDEFGH
1Unique Aged Care NameAged Care NameDoctor NameSelect Aged Care NameSelect DoctorLoV Build
2ABJohnBwilliamJohn
3BBwilliamwilliam
4CAPeter 
5D 
6 
7 
Sheet1
Cell Formulas
RangeFormula
H2:H7H2=IFERROR(INDEX($C$2:$C$9999,AGGREGATE(15,6,ROW($C$2:$C$9999)-ROW($C$1)/($B$2:$B$9999=$E$2),ROW()-ROW($C$1))),"")
Cells with Data Validation
CellAllowCriteria
E2List=$A$2:$A$5
F2List=OFFSET($H$2,,,COUNTIF($H$2:$H$999,"> "))

Hi Thanks for supporting, this is exactly what I wanted. Heaps thanks
 
Upvote 0
Hi M_Vishal_C,

Like this?

M_Vishal_C.xlsx
ABCDEFGH
1Unique Aged Care NameAged Care NameDoctor NameSelect Aged Care NameSelect DoctorLoV Build
2ABJohnBwilliamJohn
3BBwilliamwilliam
4CAPeter 
5D 
6 
7 
Sheet1
Cell Formulas
RangeFormula
H2:H7H2=IFERROR(INDEX($C$2:$C$9999,AGGREGATE(15,6,ROW($C$2:$C$9999)-ROW($C$1)/($B$2:$B$9999=$E$2),ROW()-ROW($C$1))),"")
Cells with Data Validation
CellAllowCriteria
E2List=$A$2:$A$5
F2List=OFFSET($H$2,,,COUNTIF($H$2:$H$999,"> "))
Hi Mate, can i ask something that formula i applied on F2 it works good but it does not work on F3. i.e if I select E3=A (Aged care) then F3 should show "Peter" but it shows "John" and "William". Please suggest
 
Upvote 0
Hi M_Vishal_C,

Like this?

M_Vishal_C.xlsx
ABCDEFGH
1Unique Aged Care NameAged Care NameDoctor NameSelect Aged Care NameSelect DoctorLoV Build
2ABJohnBwilliamJohn
3BBwilliamwilliam
4CAPeter 
5D 
6 
7 
Sheet1
Cell Formulas
RangeFormula
H2:H7H2=IFERROR(INDEX($C$2:$C$9999,AGGREGATE(15,6,ROW($C$2:$C$9999)-ROW($C$1)/($B$2:$B$9999=$E$2),ROW()-ROW($C$1))),"")
Cells with Data Validation
CellAllowCriteria
E2List=$A$2:$A$5
F2List=OFFSET($H$2,,,COUNTIF($H$2:$H$999,"> "))
Hi Mate, can i ask something that formula i applied on F2 it works good but it does not work on F3. i.e if I select E3=A (Aged care) then F3 should show "Peter" but it shows "John" and "William". Please suggest
 
Upvote 0
If you want to have multiple rows of selection options then you'll need to have multiple LoV Builds. This means you need to go horizontally for each row.

In this example I have allowed for up to 10 doctor names by building from column H to column Q. If you need more then you'll need to copy that formula further right and change the range in the Data Validation, List OFFSET.

M_Vishal_C-V2.xlsx
ABCDEFGHIJKLMNOPQ
1Unique Aged Care NameAged Care NameDoctor NameSelect Aged Care NameSelect DoctorLoV Build
2ABJohnBwilliamJohnwilliam        
3BBwilliamAPeterPeterTom        
4CAPeterCJimJim         
5DATom          
6CJim          
7          
Sheet1
Cell Formulas
RangeFormula
H2:Q7H2=IFERROR(INDEX($C$2:$C$9999,AGGREGATE(15,6,ROW($C$2:$C$9999)-ROW($C$1)/($B$2:$B$9999=$E2),COLUMN()-COLUMN($G$1)))&"","")
Cells with Data Validation
CellAllowCriteria
E2:E10List=$A$2:$A$5
F2:F12List=OFFSET($H$1,ROW()-ROW($H$1),,,COUNTIF($H2:$Q2,"> "))
 
Upvote 0
HI Mate, thanks for replying but in this case there are possibilities that may have more than 100 doctors but we dont know now.
so here it will not work
 
Upvote 0
I dummied up 200 rows of data and Doctor names and carried the columns up to HE so more than 200 LoV entries (which could be built on another sheet) and it does work.

You don't have your Excel version in your profile so my Excel 2016 solution may have a cleaner solution in a later version, or you could ask for a VBA approach.

M_Vishal_C-V2.xlsx
ABCDEFGHIJKLM
1Unique Aged Care NameAged Care NameDoctor NameSelect Aged Care NameSelect DoctorLoV Build
2ABJohnAPeterPeterTom    
3BBwilliamBwilliamJohnwilliam    
4CAPeterCJimJim     
5DATomX78Bob-78Bob-78     
6X6CJimX125Peter-125BobPeter-125    
7X7X7HarryX101John-101John-101     
8X8X8KimX200Harry-172Harry-172     
9X9X9SallyX144Harry-73william-69Harry-73Vanessa-142   
10X10X10Vanessa      
11X11X11Gary      
12X12X125Bob      
13X13X13John-13      
14X14X14william-14      
V3
Cell Formulas
RangeFormula
H2:M14H2=IF($E2="","",IFERROR(INDEX($C$2:$C$9999,AGGREGATE(15,6,ROW($C$2:$C$9999)-ROW($C$1)/($B$2:$B$9999=$E2),COLUMN()-COLUMN($G$1)))&"",""))
Cells with Data Validation
CellAllowCriteria
E2:E200List=$A$2:$A$200
F2:F200List=OFFSET($H$1,ROW()-ROW($H$1),,,COUNTIF($H2:$HE2,"> "))
 
Upvote 0
HI Mate, i really appreciate your support but I found another way by Name range in Name Manager and on column F I applied "OFFSET(Aged_Care_Start,MATCH(E2,Aged_Care_Name_Drop_Down,0)-1,1,COUNTIF(Aged_Care_Name_Drop_Down,E2),1)
and in column E I applied this formula =IF(F2="",Unique_Aged_Care_Name,INDEX(Aged_Care_Name_Drop_Down,MATCH(F2,Doc_Name,0)))

and it worked. Again thanks a lot for your help
 
Upvote 0

Forum statistics

Threads
1,215,511
Messages
6,125,250
Members
449,218
Latest member
daynle

We've detected that you are using an adblocker.

We have a great community of people providing Excel help here, but the hosting costs are enormous. You can help keep this site running by allowing ads on MrExcel.com.
Allow Ads at MrExcel

Which adblocker are you using?

Disable AdBlock

Follow these easy steps to disable AdBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the icon in the browser’s toolbar.
2)Click on the "Pause on this site" option.
Go back

Disable AdBlock Plus

Follow these easy steps to disable AdBlock Plus

1)Click on the icon in the browser’s toolbar.
2)Click on the toggle to disable it for "mrexcel.com".
Go back

Disable uBlock Origin

Follow these easy steps to disable uBlock Origin

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back

Disable uBlock

Follow these easy steps to disable uBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back
Back
Top