Excel数组公式IF(多个条件)

Excel数组公式IF(多个条件),excel,excel-2007,excel-formula,Excel,Excel 2007,Excel Formula,在我的电子表格中,比较耳机,我们的指导基本上是使用尽可能多的不同公式 因此,作为电子表格的一部分,我希望能够显示每个制造商最昂贵的耳机、每个制造商最便宜的耳机、每个制造商最好的额定值等等。。。 到目前为止,我已经能够得到一些主要工作的数组公式 例如,此公式可用于获得价格最高的制造商“Sennheiser”模型: =INDEX($Data.$B$5:$L$32,SMALL(IF($Data.$E$5:$E$32 = $Sheet2.D17, ROW($Data.$B$5:$E$32) - ROW(

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

因此,作为电子表格的一部分,我希望能够显示每个制造商最昂贵的耳机、每个制造商最便宜的耳机、每个制造商最好的额定值等等。。。 到目前为止,我已经能够得到一些主要工作的数组公式

例如,此公式可用于获得价格最高的制造商“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为“森海塞尔”的预计算最高价格

这很好用,直到你得到两个价格/等级相同的耳机或其他东西。然后它开始返回错误的值

所以我尝试了在互联网上找到的各种解决方案,比如

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

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


通常情况下,提前感谢,在这里不起作用,因为AND返回的是单个结果而不是数组……但是*应该可以,即在B3中尝试此公式

=索引(数据!C$5:C$32,匹配(1,(数据!$E$5:$E$32=$D3)*(数据!$B$5:$B$32=$A3),0))

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


这将找到price和manufacturer的第一个匹配项,并返回相关的型号/类型。您还可以使用一个简单的公式:

=if((条件A)*(条件B)*……;真;假)


确保将条件放在括号之间。

是否也应该有标记?这解决了在不使用筛选函数的情况下基于同一行上的多个值进行筛选的问题,有一个例子,在IF函数中只有一个条件