ARTICLE · 1257995
【Excel函数】一对多进行数据的查询筛选
【Excel函数】一对多进行数据的查询筛选
今天分享一对多的数据查询,根据部门查询相关人员的信息。 
一、FILTER函数。 
<=FILTER(A2:E8,A2:A8=B11)> FILTER函数做一对多查询最省心,第1参数写A2-E8表示返回的列是A至E列,第2参数直接用部门与B11单元格进行比较。 二、INDEX+SMALL+IF函数。 
<=IFERROR(INDEX(A$2:A$8,SMALL(IF($A$2:$A$8=$B$11,ROW($A$1:$E$7),99),ROW(A1))),"")> 这是一个非常经典的一对多查询的函数公式,在FILTER没有出现的时候,一直占据一对多查询常用的函数公式。 整体的思路是用SMALL+IF,如果A2-A8等于B11的值的时候就返回由ROW生成的序号,否则返回99,这里的99比数据区域的最大行大就可以了。 低版本的需要三键结束【Ctrl+Shift+Enter】,高版本Office 365与最新的WPS是不需要的。 三、VLOOKUP加辅助列的方式。 
<=IF(B2=$C$11,A1+1,A1)> 第一步,在A2至A8单元格写上公式,表示,如果B2的值等于C11查询的值,就等于上边的序号加1,否则等于上边的序号。 
<=IFERROR(VLOOKUP(ROW(A1),$A$2:$F$8,COLUMN(A1:E1)+1,0),"")> 第二步用VLOOUP进行数字的查询。 ROW(A1),在第一行的时候返回1,第2行的时候返回2,以此类推……。 $A$2:$F$8 表示查询的区域,这里锁定,在下拉的时候不会变换行。 COLUMN(A1:E1)+1 这里表示返回的列数,+1是为了显示第2列的数字。 0 就是精确查询的意思了。 最外边套IFERROR防止,多拉几行的时候没有值返回,防止显示错误值。






今天的分享你学会了吗?光说不练假把戏,自己操练起来吧,学到就是挣到,为自己加油。
如果此文章对你有用,欢迎转发哟















































































