VLOOKUP函数是大家都非常熟悉的查询函数,我们经常利用它来进行数据的条件查找,但大多时候主要是在同一张表格或者同一个工作簿内进行数据的查询引用。
今天分享如何利用VLOOKUP函数进行跨表甚至跨工作簿查询。
1、跨表查询
如下图表格所示,需要从1到6月份的销售业绩明细表里面,查找指定人员指定月份的销售业绩。比如我们查找刘彩静1月份的销售业绩,输入公式:
=VLOOKUP(A2,'1月'!B2:C12,2,0)
说明:公式中的第2个参数,查找区域也可直接选中1月份表格对应的B、C两列区域。
2、多表数据查询
如下图所示,要求根据人员姓名查找1到6月份的所有销售业绩。在C2单元格中输入公式:=IFERROR(VLOOKUP($B2,INDIRECT(C$1&"!B:C"),2,0),""),往右往下填充公式即可。
说明:
这里用VLOOKUP函数和INDIRECT函数结合,对各个明细表B、C两列数据查找区域进行动态引用,注意公式中单元格的引用方式。因为有些员工在一些月份里是没有业绩的,查找不到数据,会返回错误值,还需要用IFERROR函数进行容错处理。
3、跨工作簿查询
如果1到6月份的销售数据明细都是单独的一个工作簿,我们又如何进行数据的查询引用呢?
跨多个工作簿查询引用数据,在C2单元格中输入公式:
=IFERROR(VLOOKUP($B2,INDIRECT("["&C$1&".xlsx]"&C$1&"!B:C"),2,0),""),
往右往下填充。
说明:如果查找的是张夏晗1月份销售业绩,可以输入函数公式=IFERROR(VLOOKUP($B2,'[1月.xlsx]1月'!$B:$C,2,0),""),这里我们同样利用INDITECT函数,实现多个工作簿数据区域的动态引用。
注意:利用VLOOKUP函数跨工作簿查询引用,需把所有关联工作簿全部打开。