excelexcel-formulaexcel-2016

Create a smaller dynamic list in Excel from data in a larger list using multiple criteria


I need some advice and assistance in creating a list in Excel that is a separate subset of a larger list, using information that is contained in the larger list.

In the larger list, for example, there is a Project ID in cells A1:A15. In cells B1:B15 there is a Priority field, represented in a drop down box indicating Yes/No (or blanks). In a third column, cells C1:C15, there is a Delivery Date field indicating which month the Project is assigned/expected to be delivered (February, March, April or blanks, which indicates it is unassigned).

What I need to create is a dynamic list that is a subset of the larger list which contains the Projects that are both Priority projects (where Priority column B ="Yes") and which have NOT been assigned/allocated to a Delivery Date/Month (where Delivery Date column C = blanks). So I need to create a formula that utilizes multiple selection criteria to do that.

In the previous thread that I found here on this topic, the author asked for help in creating a simple, one criteria formula to accomplish something similar - creating a smaller list from data contained in a larger list. It was a simple array formula, but was elegant and worked beautifully. Unfortunately, as much as I tr to tweak and modify that formula, I cannot crack to code on how to incorporate multiple criteria into the formula. Here's the original:

{=INDEX($A$1:$A$15,SMALL(IF($B$1:$B$15="Yes",ROW($B$1:$B$15)),ROW()-ROW($G$2)+1))}

I have tried modifying the IF statement inside of the SMALL formula, adding an AND() to also check for blanks in column C, like this:

{=INDEX($A$1:$A$15,SMALL(IF(AND($B$1:$B$15="Yes",$C$1:$C$15=""),ROW($B$1:$B$15)),ROW()-ROW($G$2)+1))}

I made it an array formula (using Shift-Ctrl-Enter while in the cell where the formula is contained). This resulted in retrieval of the first row of the larger source data list (which had no "Yes" or "No" and had blanks in the Delivery Date column), but then when I copied and pasted the formula down the column I receive the #NUM! Excel error message.

What am I missing?

Thanks in advance for any help you can provide.


Solution

  • Use this formula, say in E2:

    =INDEX($A$1:$A$15,SMALL(IF($B$1:$B$15="Fail",ROW($B$1:$B$15)),ROW()-ROW($E$2)+1))
    

    press CTRL+SHIFT+ENTER to evaluate it and drag it down.

    enter image description here

    Another way would be to filter column B for Fail values and copy only visible rows