一个小小的VSTACK函数,就能实现多工作表合并!

职场   职场   2024-08-27 08:39   河北  

Excel情报局

职场联盟Excel

生产挖掘分享Excel基础技能
Excel爱好者大本营
用1%的Excel基础搞定99%的职场问题
做一个超级实用的Excel公众号
Excel是门手艺玩转需要勇气
数万Excel爱好者聚集地
SUPER EXCEL MAN


    



今天我们来继续复习一下“多工作表合并”的问题。最最重要的一点就是我们使用的是函数的方法进行合并,告别VBA和Power Query编辑器等方式。


如下图所示

我们有三个分表,每个分表有两列数据,行数并不确定。三个工作表分别代表不同的省份。各个工作表内数据是地市与销量的对应表。


分表1“河北”:



分表2“山东”



分表3“广东”



合并完成后的数据,总表“合并数据”



我们来介绍一下Excel新增函数VSTACK函数


VSTACK函数可以将N个数组垂直叠到一个数组中


VSTACK函数有两种参数输入方式


第一种是这样的

=VSTACK(区域1,区域2,....,区域N)


就是说,有多少个需要合并的区域,那么VSTACK函数就有多少个参数,用逗号隔开即可。并且参数“区域”并不一定是在同一个工作表,也可以是多个工作表(如本例所讲的)。


我们在“合并数据”工作表中A2单元格输入函数公式

=VSTACK(河北!A2:B4,山东!A2:B3,广东!A2:B4)


此种书写方式虽然可以完成多工作表合并的效果,但是如果工作表数量多的情况下,假设有50个工作表(本例中只有3个分表),一个一个去不同工作表勾选区域,效率就非常低了。



第二种是这样的

=VSTACK(表1:表N!区域)


就是说,如果需要合并的某个区域存在于多个工作表,该区域不需要像第一种参数输入方式那样一个一个到不同工作表勾选区域。而是用“表1:表N!区域”这种书写的方式,代表包括表1~表N之间的所有工作表的某一指定区域。如果工作表多,用这种效率高。


我们在“合并数据”工作表中A2单元格输入函数公式

=VSTACK(河北:广东!A2:B5)


这样书写的好处是:假设我们有50个工作表(本例中只有3个分表),我们只需要用“河北:广东!”代表包括起始工作表“河北”与末尾工作表“广东”之间的所有工作表。再加上区域A2:B5,就可以轻松表示需要合并的所有工作表中的A2:B5区域了。


此时返回结果会包含很多0值,原因就是每个分表的行数是不确定的,所以合并的区域的行数要根据实际情况尽可能的大一些,以尽可能覆盖所有需要合并的数据,但是分表多出的空行,合并表中会以0值显示。



我们可以删除0值


先将公式产生的结果数据全部选中后复制,原位置选择性粘贴为数值,目的是去掉公式,保留值。



最后,选中A列,快捷键Ctrl+F,调出“查找”对话框,查找0值,勾选“单元格匹配”,点击“全部查找”,快捷键Ctrl+A全选所有查找出来的0值后,关闭“查找”对话框,在任意一个查找出来的0值单元格上右击鼠标,点击“删除-整行”,即可完成操作。



回顾关键内容,善用图片表达,学会建立联系,拓展深度广度,浓缩关键概念,应用到行动中,善于归纳总结,尝试进行分享。

 

 


知识点精彩链接点击阅读

Excel单元格内数据去重/Excel各列数据同步去重
Excel函数降维技巧/157个常用VBA代码模板
Excel提取数字字母汉字/Excel提取字母数字汉字
Excel03~19软件下载/WPS表格19VBA宏功能
全网文字免费复制技巧/提取Excel表格所有图片
再不怕忘记电脑开机密码/Excel合并工作表函数法
批量合并所有工作表/材料出入库表格模板分享
卡通风格PPT模板分享/梦幻风格PPT模板分享
vlookup多条件查询/Excel电话号导入通讯录
更多实用内容请在历史文章搜索 

Excel情报局
Excel表格爱好者,分享一些日常的积累。做一个职场人都能看懂的表格技巧公众号。多学一个Excel小技巧,会让你在职场中多一分底气与自信。(同名视频号)
 最新文章