在很多Excel用户眼中,会用Vlookup函数、Lookup函数似乎很利害了。其实远远不够,在实际工作中有很多高难问题需要多个函数组合才能完成。
有一个查询是很多人做梦都想实现的,可惜vlookup、Lookup都实现不了。它就是多表查询。下面汪站长就展示一下查询结果,让大家先见识一下这种查询有多牛。
【例】工资的跨表查询
Excel工作簿中有N个部门的工资表
在查询表中,给定姓名,竟然可以查出该员工所在的部门和工资
是不是你梦想中的查询公式?下面汪站长就一步步揭开这个神秘公式的真面目。
判断员工是哪个部门的,可以用Countif函数计算个数,而多个表也难不住我们,前天的跨表求和中已学会了indirect函数多表引用的方法。
=COUNTIF(INDIRECT({“财务部”;”人事部”;”服务部”}&”!a:a”),A2)
测试结果:
选取公式按F9键可以返回一个数组{0;1;0},其中非0数字1的位置的即是员工所在表的位置(该员工在第2个表中)
问题是知道1的位置,怎么把表名给提取出来?接下来要请了第3个大神函数:Lookup函数。用它经典的lookup(1,0/ 套路正好可以解决这个问题
=LOOKUP(1,0/COUNTIF(INDIRECT({“财务部”;”人事部”;”服务部”}&”!a:a”),A2),{“财务部”;”人事部”;”服务部”})
至此,所在部门查询完成!
有了部门查工资,就简单多了,Vlookup配合indirect函数可以轻松搞定!
=VLOOKUP(A2,INDIRECT(B2&”!A:B”),2,0)
Ps:最终,我们用了4个大神函数(Vlookup函数、Lookup、Countif、Indirect函数)搞定了这个历史性的查询难题。不少同学也会用这几个函数,可公式自已写不出来。汪站长想说,这就是你与excel高手的区别,会用函数只是第1步,灵活应用才是最高境界。这需要长时间的练习和应用。
|
|
打开微信扫一扫,Office自学网
专注分享软件安装和视频教程,让你一号在手,办公无忧!