excel学习库

excel表格_excel函数公式大全_execl从入门到精通

VLOOKUP+辅助列,实现一对多查询和通配符查询,真是如虎添翼

现在要实现一对多查询,如图所示,根据部门获取这个部门的数据:

案例

这个时候,我们需要构建一个辅助列:

构建辅助列

公式为:=(B2=$G$2)+A1

这个公式是什么意思,如果当前的部门和要查询的部门相等,那么就加上一个单元格,如果B2=$G$2 成立,返回1,而A1是0,所以返回1,公式向下填充,公式变化,生成1,2,3的序列。

然后使用VLOOKUP函数,公式向右向左填充:

使用VLOOKUP

=VLOOKUP(ROW(A1),$A$2:$E$10,COLUMN(B:B),FALSE)

当ROW(A1)向下填充的时候,生成序号1,2,3,4等等,查询的值就是1,2,3,4,而COLUMN(B:B向右填充的时候,生成的序号位2,3,4等等,这样就查询出了结果。

为了屏蔽错误值,可以用iferror屏蔽错误值:

使用iferror

还没完,这个是按部门查询,如果是使用通配符呢,我们就可以借助另外一种方法。

使用countif构建辅助列

使用countif

=COUNTIF($B$2:B2,$G$2&"*")

这样就给姓李的人生成了连续的序号,而第一个例子的VLOOKUP函数就不用变化,只是变化了辅助列,就获取了结果

获取结果

=IFERROR(VLOOKUP(ROW(A1),$A$2:$E$10,COLUMN(B:B),FALSE),"")

看到了吗,两个不同的辅助列,一个公式,搞定了两个复杂的查询,所以说VLOOKUP+辅助列真是如虎添翼啊。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

«    2024年12月    »
1
2345678
9101112131415
16171819202122
23242526272829
3031
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
搜索
最新留言
    文章归档
      友情链接