上周给一家企业培训WPS表格课程的时候,学员小E咨询道:“有什么快捷的方法可以把多个结构相同的表格,比如不同分公司的工资表合并,并匹配到一张列顺序不同的总表中。在分公司的表中顺序是员工编号、姓名、部门、职务……,而在提交给总公司的总表中的顺序是员工编号、部门、职务……。”
我们先拆解一下小E的需要:
第一,要将结构相同的多工作簿合并到一张工作表。
第二,在总表中要根据一个关键字,比如员工编号查询在分公司表中相关的列数据。
接下来我们依次来看一下在WPS表格中要如何实现这两个需求。
01 结构相同的多工作簿合并
如果在EXCEL中要实现多工作簿合并,需要使用POWER QUERY建立查询。而在WPS表格中,只需要点击“数据”选项卡中的“合并表格”功能即可。
在弹出来的对话框中,点击“添加文件”,选择多个结构相同的工资表文件所在的文件夹,把文件全部选中添加进来。
如果表格顶部有多层级表头,可以在底部选择数据是从第几行开始合并的。
02 根据一个关键词匹配相关数据
如果只是返回关键词匹配的一列数据,我们用VLOOKUP一个函数即可,但现在要返回的是多列数据,就需要结合MATCH函数,我们先来看一下这两个函数的语法。
纵向查询:VLOOKUP(查询值,数据源表,结果在数据源的第几列,0/1)
最后一个参数0为精确查询,1为区间查询。
查询位置:MATCH(查询值,包含查询值的一行或一列,0/1)
最后一个参数的作用和VLOOKUP相同。
把唯一识别不同员工信息的员工编号列复制到总表中,之后在B2插入VLOOKUP函数。
第1个参数选择左侧的A2单元格,因为公式稍后会复制到右侧和底部,所以我们需要锁定A列,确保公式往右侧复制的时候,列号是不动的,但往下复制的时候,行号是可变的,也就是$A1,$出现在字母的前面代表锁列,出现在数字的前面代表锁行。
第2个参数就选择刚刚合并的工资表的所有列,把这个地址整个锁定起来。
第3个参数中嵌套match函数,match的第1个参数选择B1单元格,也就是姓名,锁定行号不锁列号,代表往右复制列号可变,但往下复制行号是固定的。第2个参数选择工作表的第1行,表示在这一行中查询“姓名”两个字的位置,最后1个参数是精确查询的0。
VLOOKUP函数的最后1个参数也是代表精确查询的0。
把公式往右和往下复制,所有数据都查询出来了,如果在顶部新增加其他列,只要把公式复制过去,照样可以带出来。
这就是在WPS中把多个表格合并到一张列顺序不同的总表中的方法,你学会了吗?