【问题标题】:complicated index/match with multiple columns and rows具有多列和多行的复杂索引/匹配
【发布时间】:2018-09-05 09:52:19
【问题描述】:

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

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

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

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

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

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

【问题讨论】:

  • 你真的需要找到桌子上的金额的中间步骤吗?列的顺序可以颠倒从低到高吗?

标签: excel-formula lookup


【解决方案1】:

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

=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))

这些公式相互独立。

【讨论】:

  • Scott,非常感谢这个公式,不,我不需要中间步骤。我注意到您不需要将表格从最低到最高重新排列,它仍然有效。这些公式看起来很简单,但我必须将其分解以理解它,以便将其应用于其他一些场景。
  • 内部索引:INDEX($C$5:$F$12,MATCH($C$14,$B$5:$B$12,0),0) 返回找到匹配项的完整行。第三个标准中的0 告诉您想要整行的公式。所以正确的行被返回到外部匹配,这反过来又将正确的位置返回到外部索引。
  • 记得点击答案旁边的复选标记标记为正确。
猜你喜欢
  • 1970-01-01
  • 2019-05-07
  • 2021-07-09
  • 2018-10-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-04-20
  • 1970-01-01
相关资源
最近更新 更多