日常工作中,会遇到利用Excel查找满足一个条件并返回多个同时满足条件的值,碰到这样的情况,你一般是如何处理的呢?
如下图所示,如何进行一对多的查询?
这里可以利用INDEX+SMALL+IF组合函数来解决,在单元格中输入公式=IFERROR(INDEX($B$2:$B$8,SMALL(IF($A$2:$A$8=$D$2,ROW($A$1:$A$7),8^4),ROW(A1))),””),最后按Ctrl+Shift+Enter组合键结束。
公式说明:
INDEX函数语法:=INDEX(区域,行数,列数)
SMALL函数语法:=SMALL(区域,第几个最小值)
IF函数语法:=IF(判断条件,符合条件时返回的值,不符合条件时返回的值)
ROW函数语法:= ROW(参考)
IFERROR函数语法:=IFERROR(原公式,出错需返回的值)
IF($A$2:$A$8=$D$2,ROW($A$1:$A$7),8^4):表示判断区域,是否等于D2单元格内容,如果是的话,就返回1到7的自然数,如果不是则返回大数8^4。
ROW($A$1:$A$7):表示生成数字1,2,3,4,5,6,7
SMALL(IF($A$2:$A$8=$D$2,ROW($A$1:$A$7),8^4),ROW(A1)):表示对IF函数判断的结果再次进行运算,运算规则是获取对应的第几个最小值。
这些函数解释,你看明白了吗?若有不明白地方,可以在留言区留言哟