巨奢网 资讯 名表 查看内容

Excel通用VBA代码一键合并多个工作表至总表!

2024-12-26 07:49| 发布者: fuwanbiao| 查看: 250| 评论: 1

放大 缩小
简介:一个工作簿中会有很多个相同格式,标题行内容和顺序都一样的工作表,我们想把这个工作表中的数据全部放至一个总表数据中。 图片上示例是3个工作表,实际工作中可能是几十个,如果一个一个复制粘贴至总表里面,耗费的 ...

一个工作簿中会有很多个相同格式,标题行内容和顺序都一样的工作表,我们想把这个工作表中的数据全部放至一个总表数据中。

Excel通用VBA代码一键合并多个工作表至总表!


图片上示例是3个工作表,实际工作中可能是几十个,如果一个一个复制粘贴至总表里面,耗费的时间很长,并且容易出错,今天教大家用一段通用的VBA代码来实现一键快速合并,效果如下所示:

Excel通用VBA代码一键合并多个工作表至总表!


只需要点击一下多表合并的按纽,后面所有工作表,会按顺序全部放至汇总表格中。


现在是每个工作表中的标题是4个项目,如果是更多项目,同样的可以进行合并,例如我们在英雄1表格中添加一列



Excel通用VBA代码一键合并多个工作表至总表!



用这个代码,同样的可以进行快速合并,只需要在汇总的表格中添加一个标题第五列,然后点击多表合并按纽即可



Excel通用VBA代码一键合并多个工作表至总表!



同样的,如果是再添加1个工作表,在英雄1后面插入了一个sheet2表格,里面输入一条同样的数据,如下所示:

Excel通用VBA代码一键合并多个工作表至总表!


同样的,只需要点击多表合并按纽便可完成,如下所示:



Excel通用VBA代码一键合并多个工作表至总表!



那么这个VBA代码是什么,如下所示:



Excel通用VBA代码一键合并多个工作表至总表!



Sub 多表合并()


Dim arr()


a = Range("a1").End(xlToRight).Column


For Each sh In Sheets


If sh.Name <> "汇总" Then


arr1 = sh.Range("a2").Resize(sh.UsedRange.Rows.Count - 1, a)


act = act + UBound(arr1)


ReDim Preserve arr(1 To a, 1 To act) '


For j = 1 To UBound(arr1)


n = n + 1


For i = 1 To a


arr(i, n) = arr1(j, i)


Next i


Next j


End If


Next


Sheets("汇总").[a2].Resize(n, a) = Application.Transpose(arr)


End Sub


这段代码直接保存即可,有了这段代码,我们在VBA中插入一个模块,将代码写入进去,插入一个按纽,绑定代码,即可实现,绑定代码的操作过程如下所示:

Excel通用VBA代码一键合并多个工作表至总表!


好,你学会了吗?


给自己持续学习的态度点个赞吧!


欢迎留言讨论,期待您的转发分享!


-------------------------------


谢谢关注,更多精彩内容持续更新中....



路过

雷人

握手

鲜花

鸡蛋
已有 1 人参与

会员评论

 名表回收网手机版

官网微博:名表回收网服务平台

今日头条二维码 1 微信公众号二维码 1 抖音小程序二维码 1
浙江速典奢贸易有限公司 网站经营许可证 备案号:浙ICP备19051835号2012-2022
名表回收网主要专注于手表回收,二手名表回收/销售业务,可免费鉴定(手表真假),评估手表回收价格,正规手表回收公司,浙江实体店,支持全国范围上门回收手表
返回顶部