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

简介:

wKioL1NFWuiSU2YEAAD7cruZmRI785.jpg

查询函数我们使用最多的就是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。


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


wKiom1NFYsmisdgiAAF_HCsWyso326.jpg



本文转自 kirin 51CTO博客,原文链接:http://blog.51cto.com/kirin/1393111 ,如需转载请自行联系原作者

相关文章
|
4月前
|
前端开发
let array = [{id:‘001‘,name:‘小新‘,age:5},{ id:‘002‘,name:‘小葵‘]这样数据如何遍历,拿到其中一个值,数组中装对象如何获取其中一个固定的值
let array = [{id:‘001‘,name:‘小新‘,age:5},{ id:‘002‘,name:‘小葵‘]这样数据如何遍历,拿到其中一个值,数组中装对象如何获取其中一个固定的值
|
4月前
|
索引
ArrayList集合常用方法,.set可以用来生成图片和赋值命名,array.remove(1),array.set(1,“xxxx”)可以修改指定位置,array.size可以获取元素的个数
ArrayList集合常用方法,.set可以用来生成图片和赋值命名,array.remove(1),array.set(1,“xxxx”)可以修改指定位置,array.size可以获取元素的个数
|
6月前
|
索引
根据索引值计算item所在行列(row,col)索引序号(index)
根据索引值计算item所在行列(row,col)索引序号(index)
|
前端开发
根据数组code值返回value值
根据数组code值返回value值
77 0
|
索引
Ts中string、number和any等类型 不能当做索引用,怎么处理?
Ts中string、number和any等类型 不能当做索引用,怎么处理?
372 0
z-index无效解决
1、父标签 position属性为relative; 2、问题标签无position属性(不包括static); 3、问题标签含有浮动(float)属性。
1585 0
|
Oracle 关系型数据库 Perl
|
存储 SQL Oracle
NULL 值与索引
 NULL 值与索引     NULL值是关系数据库系统布尔型(true,false,unknown)中比较特殊类型的一种值,通常称为UNKNOWN或空值,即是未知的,不确定的。
1036 0