我是靠谱客的博主 鲜艳香水,这篇文章主要介绍excel合并多个工作表_EXCEL一键将多个工作簿合并成多个工作表(完善版),现在分享给大家,希望可以做个参考。

原创作者: 卢子 转自: Excel不加班

一年前的旧文章了,今天突然VIP学员需要这个功能,拿出来完善。原文章可以实现一键将多个工作簿合并成多个工作表,不过工作表名称没有重新改名。

详见:一键合并,12个增值税发票的工作簿

比如,文件夹内有很多工作簿,现在需要将所有工作簿放在Excel不加班教程合并这个工作簿。

f8a68332c7ce3030b1f502792041c033.png

合并后效果:工作表的名称是以原来工作簿的名称命名,每个工作表放着原来工作簿的内容。

72c6aff734637161f6785b7768125893.png

将模板放在实际要合并的文件夹内,打开模板,运行即可。短短几秒钟,就将所有工作簿合并过来。

aa4f6b0971ff262514984d26706c07cc.gif

源代码:

Sub 合并工作簿()

Dim Wb As Workbook, MyPath As String, File, Sh_n As String

Application.ScreenUpdating = False

Rem 关闭屏幕刷新

MyPath$ = ThisWorkbook.Path & ""

Rem 获取当前工作簿路径

File = Dir(MyPath & "*.xls*")

Rem 获取路径下所有Excel文件

Do While File <> "" '遍历所有文件

If File <> ThisWorkbook.Name Then '不合并当前工作簿

Set Wb = Workbooks.Open(MyPath & File)

Rem 依次打开工作簿

Sh_n = StrReverse(Mid(StrReverse(Wb.Name), InStr(StrReverse(Wb.Name), ".") + 1))

Sheets(1).Copy After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)

ActiveSheet.Name = Sh_n

Rem 将第一个表复制到当前工作簿的最后一个工作表

Wb.Close False '关闭工作簿 不保存

End If

File = Dir

Rem 循环下一个工作簿

Loop

Application.ScreenUpdating = False

Rem 打开屏幕刷

End Sub

最后

以上就是鲜艳香水最近收集整理的关于excel合并多个工作表_EXCEL一键将多个工作簿合并成多个工作表(完善版)的全部内容,更多相关excel合并多个工作表_EXCEL一键将多个工作簿合并成多个工作表(完善版)内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(143)

评论列表共有 0 条评论

立即
投稿
返回
顶部