Excel-如何从两个单独的查找以及值之间查找输出

时间:2018-11-20 02:15:00

标签: excel indexing match vlookup

我正在尝试根据第一列(A1和B2)中的值以及介于最小和最大条带之间的另一个数字来查找输出(在下面的示例中为条带)。

我很难解释,但是尝试一个例子,例如第一列(A1和B2)是汽车品牌。对于A1且价格为2的汽车品牌,我希望输出为AAA级。对于B2且价格为9的汽车品牌,我希望输出结果为CCC带。

如何使用Excel公式填充输出,我研究了Index-Match函数,但是由于条带可能相同,这很困难,因此我现在很困惑,但是在两个汽车品牌之间,它们之间的值不同。

enter image description here

3 个答案:

答案 0 :(得分:2)

使用以下数组公式。数组公式表示在单元格中键入公式后必须按CTRL+SHIFT+ENTER

=INDEX(D2:D9,MIN(IF(A2:A9=F2,IF(B2:B9<=G2,IF(C2:C9>=G2,ROW(D2:D9)-ROW(D1))))))

CTRL + SHIFT + ENTER 可以计算公式,因为它是数组公式。

enter image description here

  

如果您更喜欢非数组公式,则可以使用此公式。

=INDEX(D2:D9,AGGREGATE(15,6,(ROW(D2:D9)-ROW(D1))/((A2:A9=F2)*(B2:B9<=G2)*(C2:C9>=G2)),1))

答案 1 :(得分:1)

您将要执行称为双重VLOOKUP的操作:VLOOKUP with two criteria?

有两个选项,请注意INDEX(MATCH())方法使用数组公式。

下面是一个公式的示例:

=INDEX(D2:D9,SUMPRODUCT(MATCH(1,(A2:A9=[car])*(B2:B9<=[price])*(C2:C9>[price]),0)))

只需用单元格引用(或硬编码值)替换[car][price]

答案 2 :(得分:1)

没有数组公式就可以进行索引/匹配。将公式与屏幕截图进行比较。

=INDEX(INDEX(D:D,MATCH($H$2,A:A,0)):INDEX(D:D,MATCH($H$2,A:A,1)),MATCH($H$3,INDEX(B:B,MATCH($H$2,A:A,0)):INDEX(B:B,MATCH($H$2,A:A,1)),1))

enter image description here