Home > Software design >  Dynamic data validation lists populated from another cell
Dynamic data validation lists populated from another cell

Time:10-11

I am trying to achieve two things which I presume are possible but I'm unsure of where to start.

enter image description here

What I am hoping to achieve is to populate the list (shown in cell C4) with the data entered in cell A3. What I don't know is how to make the A3 string breakdown based on the comma delimiter so that it is not one long string, but rather results in a list at C4, as displayed in the screenshot.

Note: I have hardcoded the list shown in the screenshot as I wanted to show what I need to achieve. If I reference A3 directly (=$A$3), my list only has one item - 'Yes, No, I don't know', opposed to the list displayed in the screenshot.

Then, if this is possible, instead of hard coding A3 as the reference, I want to read the value in B4. This would allow me to change the value of B4 to point at any other cell, such as A6.

I believe both these things are likely possible but Googling has not helped as it appears I'm searching for the wrong keywords.

Thank you in advance for anyone who can help me with this.

CodePudding user response:

May be you can try to separate them in cell A3 =SUBSTITUTE(LEFT($A$2,FIND(",",$A$2,1)),",","") and try to paste as will in Cell A4 =MID(A2,FIND("Yes",$A$2,2),3) so as will separate the last word to cell A5 =RIGHT(A2,LEN(A2)-FIND("Yes, ",$A$2)-4)

And your Source in your data validation would be =$A$2:$A$4

CodePudding user response:

Instead of having all options in one cell, why don't you just make a list across different columns and then enter in the reference cell the letter of the column. Then in your validation, use indirect(cell ref & "1:" & cell ref & "Max row num").

Or better yet, name the ranges, then simply list the name of the range in the reference cell and use indirect(cell ref) to dynamically change drop down options. E.g your range would be named "fruit", in b4 you would enter "fruit".

  • Related