首页 > 解决方案 > 具有多列和多行的复杂索引/匹配

问题描述

我有一个具有 2 个条件的复杂查找,问题是第二个条件取决于第一个条件的位置,我无法理解如何从第一个匹配项中为其提供位置。

标准 1 很简单,它是家庭规模,它基本上从一列中读取并匹配家庭规模

标准 2 为收入金额,收入表为 4 列宽 8 行深(C5:F12)。收入金额因家庭人数而异。因此,我需要返回与该家庭规模的收入最接近的值,而不会超过该数字。在下面的示例中,为 4 口之家提供的收入为 55,200 美元,应返回 E8(62,950 美元)。

一旦我有了这个,我就必须编写另一个公式来返回第 4 行的奖励金额。在提供的示例中,奖励金额将是单元格 E4(70,000 美元)。我不知道我会使用什么公式;也许是一个很长的 IF 语句(不确定)。

我正在使用这个公式,但收到 #N/A 错误,这可能是由于查找数组的大小。我在索引/匹配中看到的每个示例都有用于在一行中查找值的列,但是对于我的数据,需要查看的行取决于家庭规模。

=INDEX(C5:F12,MATCH(C14,B5:B12,0),MATCH(C15,C5:F12,-1))

在此处输入图像描述

标签: excel-formulalookup

解决方案


您不需要中间步骤。只需使用:

=INDEX($C$4:$F$4,MATCH($C$15,INDEX($C$5:$F$12,MATCH($C$14,$B$5:$B$12,0),0),-1))

在此处输入图像描述


如果您想要其他值,请将此公式放入 C17:

=INDEX($C$5:$F$12,MATCH($C$14,$B$5:$B$12,0),MATCH($C$15,INDEX($C$5:$F$12,MATCH($C$14,$B$5:$B$12,0),0),-1))

在此处输入图像描述

这些公式彼此独立工作。


推荐阅读