利用index、small函数查询返回多个值_small

查询函数我们使用最多的就是vlookup函数,它可以帮助我们快速查询返回我们所需的数据。但是如遇到上图时,需要查询A对应B列所有的数据用vlookup就显得力不从心了。因为vlookup只能返回所查询到的第一个对应的数据。


此时,我们可以利用多个函数组合的数组公式解决。在E2单元格输入如下数组公式:

=INDEX($B:$B,SMALL(IF($A$2:$A$11=$D2,ROW($A$2:$A$11),4^8),COLUMN(A1)))&""

输入后按Ctrl+Alt+Enter,完成数组公式。


利用small函数来定位所有A在第一列的位置,其中column(a1)用来显示第几个A。如拖动E2单元格填充柄往右填充公式,在E2时为column(a1)即1,第一个A;F2时为column(b1)即2,第二个A,以此类推。


得出第一个A时也就是E2单元格,small函数返回2,通过index返回B列第二个值为X。

第二个A,F2单元格,small函数返回3,通过index返回B列第二个值为Z。

第二个A,G2单元格,small函数返回10,通过index返回B列第二个值为Y。


在这个公式末尾,添加&"",为的是避免出现错误提示。增加数据阅读性。


利用index、small函数查询返回多个值_small_02