如何使用两个INDEX和MATCH语句返回特定值?

问题描述 投票:0回答:1

我有一种情况,我希望找到数组中最接近的值,然后用它来查找另一个值。

这是我的例子。

enter image description here

在单元格 H4 中,用户可以输入他们希望运行特定测试的所需值(以分钟 [mins] 为单位)。在本例中,选择了测试 1(单元格 I4)。我希望获得 B4:B9(数组的分钟列)中等于或小于单元格 H4 中的值的最接近值。到目前为止,我的公式返回正确的数字(5;单元格 J4),但我想扩展我的公式以返回与值 5 关联的 var1(C 列)的值。

我的结果应该是 113,因为 113 与测试 1 的 5 分钟相关。

如何继续单元格 J4 中的公式(见下文)以根据最接近的分钟值返回 var1 所需的数字?

=IF(I4="","",INDEX(A4:C9,MATCH(H4,IF(A4:A9=I4,B4:B9),1),2))
excel excel-formula
1个回答
1
投票

适用于所有版本 Excel 的最简单版本:

=SUMPRODUCT((A2:A7=F3)*(B2:B7=G3)*C2:C7)

您还可以使用:

=SUMIFS(C2:C7, A2:A7, F3, B2:B7, G3)

或者:

=FILTER(C2:C7,(A2:A7=F3)*(G3=B2:B7))

或者如果你真的想用

INDEX
/
MAtch
来做:

=INDEX(C2:C7, IF(1, MATCH(1, (A2:A7=F3)*(B2:B7=G3), 0)))

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.