Ignoring Blank value in a drop down list

S

shail

Hi,

I have a dynamic drop down validation List, which comes from another
spreadsheet list and have a few random blank cells in it. I need to
drop these blank values from the List without making any change in the
parent list. I may also have some duplicate values in the List and need
to drop them too.

Please help.

Thanks,

Shail
 
L

Leo Heuser

shail said:
Hi,

I have a dynamic drop down validation List, which comes from another
spreadsheet list and have a few random blank cells in it. I need to
drop these blank values from the List without making any change in the
parent list. I may also have some duplicate values in the List and need
to drop them too.

Please help.

Thanks,

Shail


Hi Shail

Here's one way to do it:

Assumptions:
Name of the range of your current validation list: OldList

1. Make a new list (named NewList), with a number of cells
which will never be reached in ordinary use. I have made
the list in C3:C24.
2. C2 must be empty or must not contain data found in OldList.
The list cannot start in row 1 with the formula used.
3. In C3 enter this array formula:

=INDEX(OldList,MIN(IF((COUNTIF($C$2:C2,OldList)=0)*(OldList<>""),ROW(OldList)))-MIN(ROW(OldList))+1)

The formula must be entered with <Shift><Ctrl><Enter>,
also if edited later. If done correctly, Excel will display the formula
in the formula bar enclosed in braces {}. Don't enter these
yourself. It's Excel's way of telling, that the formula is an
array formula.

4. Copy C3 down to C4:C24 with the fill handle (the little
square in the lower right corner of the cell).

NewList will contain all elements from OldList except
duplicates and empty cells. The rest of the range is
filled with #VALUE!

NewList will be used as your new validation list.

Enter this formula in the validation source field:

=OFFSET(NewList,,,SUM(NOT(ISERROR(NewList))+0))

The validation box will now contain, what you were looking for.
 
E

ExcelQuestion

Hi Leo,
That was a great technique. Could the dropdown listed in alphabetica
order?

Thanks in advance,
Ricky
 
L

Leo Heuser

Hi Ricky

I have made a complete description including how to make
the list sorted with formulae only.

Please see below.


"ExcelQuestion" <[email protected]>
skrev i en meddelelse
Hi Leo,
That was a great technique. Could the dropdown listed in alphabetical
order?

Thanks in advance,
Ricky

Here's one way to do it:

Assumptions:
Name of the range of your current validation list: OldList

1. Make a new list (named NewList), with a number of cells,
which will never be reached under normal conditions.
I have made the list in C3:C24.
2. C2 must be empty or must not contain data found in OldList.
The list cannot start in row 1 with the formula used.
3. In C3 enter this array formula:

=INDEX(OldList,MIN(IF((COUNTIF($C$2:C2,OldList)=0)*(OldList<>""),ROW(OldList)))-MIN(ROW(OldList))+1)

The formula must be entered with <Shift><Ctrl><Enter>,
also if edited later. If done correctly, Excel will display the formula
in the formula bar enclosed in braces {}. Don't enter these
yourself. It's Excel's way of telling, that the formula is an
array formula.

4. Copy C3 down to C4:C24 with the fill handle (the little
square in the lower right corner of the cell).

NewList contains all elements from OldList except
duplicates and empty cells. The rest of the range is
filled with #VALUE!


To get the new list in alphabetical order use this setup:

5. Make another list (named SortList), which has the same size as
NewList.
I have made it in E3:E24.
6. In E3 enter this array formula:

=INDEX(NewList,MATCH(LARGE(MMULT(IF(ISERROR(NewList<=TRANSPOSE(NewList)),0,IF(NewList<=TRANSPOSE(NewList),1,0)),ROW(NewList)^0),ROW()-ROW($E$3)+1),MMULT(IF(ISERROR(NewList<=TRANSPOSE(NewList)),0,IF(NewList<=TRANSPOSE(NewList),1,0)),ROW(NewList)^0),0))

The formula must be entered with <Shift><Ctrl><Enter>

7. Copy E3 down to E4:E24 with the fill handle.

SortList contains NewList sorted.


To use NewList as validation source enter this formula
in the validation source field:

=OFFSET(NewList,,,SUM(NOT(ISERROR(NewList))+0))

To use SortList as validation source enter this formula
in the validation source field:

=OFFSET(SortList,,,SUM(NOT(ISERROR(SortList))+0))

Regards
Leo Heuser
 
S

shail

Hi Leo,

Thanks again for the fantastic post. I was thinking of this but I
didn't asked as I thought sorting couldn't be possible using a
formulae.

thanks

Shail
 
L

Leo Heuser

shail said:
Hi Leo,

Thanks again for the fantastic post. I was thinking of this but I
didn't asked as I thought sorting couldn't be possible using a
formulae.

thanks

Shail

Hi Shail

Again you're welcome, and thank you for your feedback :)

Actually, I also thought, it wasn't possible to do a sort with
formulae only, but then I suddenly saw the light ;-)

Regards
Leo Heuser
 
S

shail

Hi Leo,

If you please describe me how these formulas are working. I tried it
myself but not getting to the point.

Thanks

Shail
 
S

shail

Hi Leo,

If you please describe me how these formulas are working. I tried it
myself but not getting to the point.

Thanks

Shail
 
E

ExcelQuestion

Hi Leo,
That was an excellent post. This know-how is going to help many
certainly you have me helped greatly. Good work.

Thanks again,
Ricky
 
E

ExcelQuestion

Hi Leo,
That was an excellent post. This know-how is going to help many
certainly you have me helped greatly. Good work.

Thanks again,
Ricky
 
S

shail

It is actually the most interesting and fantastic post I ever saw in
this group

thanks again

Shail
 
S

shail

It is actually the most interesting and fantastic post I ever saw in
this group

thanks again

Shail
 
L

Leo Heuser

"ExcelQuestion" <[email protected]>
skrev i en meddelelse
Hi Leo,
That was an excellent post. This know-how is going to help many,
certainly you have me helped greatly. Good work.

Thanks again,
Ricky

Hi Ricky

You're welcome.
Thanks for your kind feedback!

Regards
Leo Heuser
 
L

Leo Heuser

"ExcelQuestion" <[email protected]>
skrev i en meddelelse
Hi Leo,
That was an excellent post. This know-how is going to help many,
certainly you have me helped greatly. Good work.

Thanks again,
Ricky

Hi Ricky

You're welcome.
Thanks for your kind feedback!

Regards
Leo Heuser
 
L

Leo Heuser

shail said:
It is actually the most interesting and fantastic post I ever saw in
this group

thanks again

Shail

<Blush><Blush> :)

I'm working on a shorter version. When it's
ready, I'll be back and include a bit of explaining.

Regards
Leo Heuser
 
L

Leo Heuser

shail said:
It is actually the most interesting and fantastic post I ever saw in
this group

thanks again

Shail

<Blush><Blush> :)

I'm working on a shorter version. When it's
ready, I'll be back and include a bit of explaining.

Regards
Leo Heuser
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top