2条公式搞定格式不同的多表合并,再也不用手工调整顺序、依次复制粘贴了,太好了! - 欧宝尤文体育app官方入口最新
欧宝尤文体育app官方入口最新
欧宝尤文体育app官方入口最新

2条公式搞定格式不同的多表合并,再也不用手工调整顺序、依次复制粘贴了,太好了!

2025-02-04 08:34:29

2条公式搞定格式不同的多表合并,再也不用手工调整顺序、依次复制粘贴了,太好了!

与 30万 粉丝一起学Excel

图片

VIP学员的问题,实际有10几个分表,为了方便演示只留下3个。要将分表的某几列汇总起来,分表格式都不一样。

图片

每个分表都有很多列,现在只需要合并黄色的列。虽然每个分表列标题顺序不一样,但是前2列都是订单号、平台名称。订单号是唯一值,平台名称跟工作表名称一样。

图片

图片

学员原来的操作方法,先将分表要合并的列手工整理成一样的顺序,再依次复制粘贴,费时费力。遇到这种问题,正常情况下,都是用VBA,详见文章:史上最强合并模板,1秒搞定格式不同的多表、多工作簿合并,牛!不过学员使用WPS,只能用函数解决。还好现在的新函数挺好用的,虽然麻烦,卢子也想到了解决方法。1.先合并前面2列订单号、平台名称VSTACK函数可以合并多表,除了前2列,其他列顺序都不一样,因此区域只能选A2:B9。新函数会自动扩展区域,只需在A2输入公式,回车即可,区域也不需要锁定。=VSTACK(京东:拼多多!A2:B9)

图片

语法:不管有多少个分表,都只写开始表格和结束表格名称。=VSTACK(开始表格名称:结束表格名称!区域)每个分表的行不一样,多出来的行就显示0,有点不美观。可以借助FILTER函数,筛选B列不是0的。=FILTER(A2:B25,B2:B25<>0)

图片

语法:=FILTER(返回区域,条件区域<>0)

用辅助列确实简单,不用辅助列也行,分别将两个区域对应的公式套进去就行。

返回区域VSTACK(京东:拼多多!A2:B9)。

条件区域VSTACK(京东:拼多多!B2:B9)。

两个区域不一样,条件区域只需针对B列判断即可。

套进去就可以。

=FILTER(VSTACK(京东:拼多多!A2:B9),VSTACK(京东:拼多多!B2:B9)<>0)

图片

2.依次引用后面所有列

订单号是唯一值,因此可以用VLOOKUP函数查找,因为返回的列不确定,再借助MATCH函数判断返回第几列。京东:=VLOOKUP($A2,京东!$A:$Z,MATCH(C$1,京东!$A$1:$Z$1,0),0)

图片

阿里:将工作表名称的京东换成阿里。=VLOOKUP($A6,阿里!$A:$Z,MATCH(C$1,阿里!$A$1:$Z$1,0),0)

图片

这种方法虽然能够解决,但是太繁琐,10几个分表,容易改错。平台名称跟工作表名称是一样的,因此可以借助INDIRECT间接引用,这样就不需要修改了。=VLOOKUP($A2,INDIRECT($B2&"!$A:$Z"),MATCH(C$1,INDIRECT($B2&"!$A$1:$Z$1"),0),0)

图片

公式比较复杂,主要是讲思路,如果你基础不牢固,建议下面2篇文章用心看完,再来看这篇文章。这也许是史上最好最全的VLOOKUP函数教程别吓自己,INDIRECT函数跨表引用真的好简单系统导出的表格格式不同没办法,如果是实际做表尽可能做成统一格式,这样后期处理起来就简单。格式不同,除非水平很好,要不然真的头大。 本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报。