Excel INDEX 数组返回多个结果,与 IF 结合

Excel INDEX 数组返回多个结果,与 IF 结合

我有一份包含各种价格的物品清单。我有一个函数,它创建一个数组来显示某项物品出现的所有实例:

     A       B      C
1 Oranges   10      Yes
2 Apples    12      No
3 Pears     14      Yes
4 Grapes    18      No
5 Apples    19      Yes
6 Oranges   16      No
7 Apples    11      No

使用数组

{=IFERROR(INDEX($B$1:$B$7, SMALL(IF($A$10=$A$1:$A$7, ROW($A$1:$A$7)-ROW($A$1)+1), ROW(1:1))), "")}

如果我在单元格 A10 中输入 Apple,则数组将返回 apple 的每个实例。

12
19
11

但是,我只想返回根据 C 列得出的每个项目,因此返回所有答案为“是”的 Apple。我尝试过以下方法:

{=IFERROR(INDEX($B$1:$B$7, SMALL(IF($A$10=$A$1:$A$7, IF("Yes"=$C$1:$C$7, ROW($A$1:$A$7)-ROW($A$1)+1, ROW(1:1))))), "")}

但是我一直收到错误,我为该函数输入的参数太少了。

答案1

=IFERROR(INDEX($B$1:$B$7, SMALL(IF(($A$10=$A$1:$A$7)*("Yes"=$C$1:$C$7), ROW($A$1:$A$7)-ROW($A$1)+1,""), ROW(1:1))), "")

这对您的数据有效。

我没有使用嵌套的 IF,而是包含了 AND 关系,还使用了固定括号。

相关内容