Excel Hlookup与iferror

时间:2013-12-03 13:18:45

标签: excel

我有一系列的值,我试图使用IFERROR和HLOOKUP与另一个值范围进行比较,如果找到该值,它将返回下一行中的值。

我的公式(下面)适用于范围1中的前两个值与范围2,但我似乎无法使其适用于以下值(总共9个)

=IFERROR(HLOOKUP(LookUp!$B$3,'Data Load-Monthly IMS'!$B$2:$L$11091,ROWS($B$2:$B3),FALSE),(HLOOKUP(LookUp!$B$4,'Data Load-Monthly IMS'!$B$2:$L$11091,ROWS($B$2:$B3),FALSE)))

所以我在我的范围内比较的九个值是LookUp!就LookUp而言,降价3美元!$ B $ 11,但如果我添加第三个条件,我似乎无法工作我上面的代码 - 但上面的两个论点确实有效,我只能添加另一个。 (我希望这清楚)

有人可以帮忙吗?提前谢谢。

1 个答案:

答案 0 :(得分:0)

您可以使用MATCH函数检查第2行中是否存在所有9个B4:B11值并检索第一个匹配

而不是9 HLOOKUPs

=INDEX('Data Load-Monthly IMS'!$B3:$L3,MATCH(INDEX(LookUp!$B$4:$B$11,MATCH(TRUE,INDEX(ISNUMBER( MATCH(LookUp!$B$4:$B$11,'Data Load-Monthly IMS'!$B$2:$L$2,0)),0),0)),'Data Load-Monthly IMS'!$B$2:$L$2,0))

向下拖动公式,得到第4行结果等。

您可以根据具体情况简化公式 - 是否可以匹配多个B4:B11值?您检索的是哪种数据,是文本还是数字?

其他信息

鉴于您的评论,使用SUMIF会更容易,假设G3:G11中的标准尝试此操作:

=SUMPRODUCT(SUMIF('Data Load-Monthly IMS'!$B$2:$L$2,LookUp!$G$3:$G$11,'Data Load-Monthly IMS'!$B3:$L3))

SUMIF创建一个包含9个总数的数组(ookUp中的条目数!$ G $ 3:$ G $ 11)然后使用SUMPRODUCT对这些数据求和并获得最终结果