二维码 购物车
部落窝在线教育欢迎您!

用函数合并多个工作表数据

 

作者:小窝来源:部落窝教育发布时间:2024-05-16 16:37:26点击:691

分享到:
0
收藏    收藏人气:0人
版权说明: 原创作品,禁止转载。

编按:

同一文件中有多张工作表(sheet),如1月、2月、3月……12月。如何按条件将多个表的数据合并在一张表中?相比PQ方法,用函数VSTACK合并更快捷。

 

将一个文件(工作簿)的多张工作表合并成一张表,可以用PQ,也可以用函数。相对来说,用函数更便捷。下面,小窝介绍用VSTACK函数合并多表数据。

 

1.合并位置不连续的工作表

当前文件有5个月份的数据。

现在需要合并2月和4月的数据到汇总表中。2月和4月两张表的排列位置不连续(中间有其他表间隔)。

 

表格
中度可信度描述已自动生成

 

公式=VSTACK('2'!A2:E96,'4'!A2:E90)

 

图形用户界面, 应用程序, 表格, Excel
描述已自动生成

 

2.合并位置连续的工作表

譬如合并3月、4月、5月的数据。这三张表的排列位置是连续的,可以用简写公式进行合并。

 

表格
描述已自动生成

 

公式=VSTACK('3:5'!A2:E100)

 

图形用户界面, 应用程序, 表格, Excel
描述已自动生成

 

说明:

1)简化

如果仍按1中的方法写,公式会比较长,=VSTACK('3'!A2:E100,'4'!A2:E100,'5'!A2:E100)

位置连续的表,可以简化,只需用冒号将首尾两张表的名称连起来即可,'3:5'!A2:E100

如果要汇总当前表外的所有表,如这里的1月到5月,可以用通配符*进一步简化,公式写成= VSTACK('*'!A2:E100)

2)行数不一致的处理

当前5张表的行数并非不一致,且都小于100,在合并中,多余的空行会被赋值为0,因此公式=VSTACK('3:5'!A2:E100)的汇总结果中有值为0的行。

 

图形用户界面, Excel
描述已自动生成

 

可以修改公式,消除各表行数不一致的空行。

公式=WRAPROWS(TOCOL(VSTACK('3:5'!A2:E100),1),5)

 

图形用户界面, 表格
描述已自动生成

 

TOCOL函数的第2参数为1,可以忽略空值。

单击了解TOCOL函数

单击了解WRAPROWS函数

 

3.按条件合并多个工作表

有时我们需要按指定条件合并表中的数据,譬如只合并1月到5月“刘宏”的数据。

简单,可以在合并的基础上进行筛选。

 

公式=LET(X,WRAPROWS(TOCOL(VSTACK('1:5'!A2:E100),1),5),FILTER(X,CHOOSECOLS(X,2)="刘宏"))

 

图形用户界面, 应用程序, 表格, Excel
描述已自动生成

 

说明:

WRAPROWS(TOCOL(VSTACK('1:5'!A2:E100),1),5)得到5表的合并数据,将其设置为变量X,然后用Filter函数筛选X中的数据。

不懂LET函数的可以单击此处

 

 

本文配套的练习课件请添加客服微信buluowojiaoyu索取。

Excel高手,快速提升工作效率,部落窝教育Excel精品好课任你选择

扫下方二维码关注公众号,可随时随地学习Excel

IMG_256

相关推荐:

新函数VSTACK和HSTACK用法

新函数WRAPROWS和WRAPCOLS用法

简化公式的函数LET

新函数TOCOL和TOROW用法

版权申明:

本文作者小窝;部落窝教育享有稿件专有使用权。若需转载请联系部落窝教育。