Excel数组公式IF(多条件)

在我的电子表格中,比较耳机,我们的指令基本上是使用尽可能多的不同公式。

所以作为电子表格的一部分,我希望能够展示每个制造商最昂贵的耳机, 每个制造商最便宜的,每个制造商最好的评价等…到目前为止,我已经能够得到一些主要工作arrays公式。

例如,这个公式可以以最高的价格获得制造商“Sennheiser”的型号

=INDEX($Data.$B$5:$L$32,SMALL(IF($Data.$E$5:$E$32 = $Sheet2.D17, ROW($Data.$B$5:$E$32) - ROW($Data.$B$5) + 1, ROW($Data.$E$32) + 1), 1), 2) 

E栏是价格栏,D17是“森海塞尔”预先计算的最大价格,

这工作正常,直到你得到2个相同的价格/评级或任何其他耳机。 它开始返回错误的值。

所以我尝试了在互联网上find的各种解决scheme

 AND(condition1, condition2) condition1 * AND(cndition2) condition1 * condition2 

但是由于某种原因,这些似乎都不适用于数组公式。 我得到#N / A或#VALUE和其他各种错误。 所以基本上我想知道如何修改我的公式,甚至是一个全新的公式,以检查最低价格和正确的制造商。

我希望我的问题是清楚的,所以我已经上传了电子表格来了解我在说什么。

http://dl.dropbox.com/u/18816338/Stats%20Analysis%20%20%281%29.xlsm

提前致谢

通常AND不会在这里工作,因为AND返回单个结果而不是数组….但*应该是OK,即在B3中试试这个公式

=INDEX(Data!C$5:C$32,MATCH(1,(Data!$E$5:$E$32=$D3)*(Data!$B$5:$B$32=$A3),0))

使用CTRL + SHIFT + ENTER确认并复制到C3,然后向下两列

这将find价格和制造商的第一场比赛,并返回相关的型号/types

你也可以使用一个简单的公式:

= if((Condition_A)*(Condition_B)* …; true; false)

确保把括号之间的条件。