excel如何将某个工作表批量插入到多个工作簿中
1、再把开头的问题实例化:
如图,要将“神山百科”工作表插入到五个excel文件中(当然也可能遇到100个文件)。

2、且需要将“神山百科”加入到每个excel文件中第一个sheet表之前。
如何使用便捷的方法呢?

3、我们先找个空表或者不是“神山百科”的表,先添加一个按钮。

4、点击开发工具---visual basic,或者按快捷键ALT+F11,打开vba编辑器。

5、右键单击microsoft excel 对象,在弹出的对话框列表中选择插入--模块。

6、复制以下vb代码到右侧的编辑框中:
Sub joinst()
'将一个工作表批量加入到其他工作簿中
Application.ScreenUpdating = False '关闭屏幕更新
Application.DisplayAlerts = False '关闭提示
Dim filename As String, swb As Workbook, twb As Workbook, fn As String
'定义变量
filename = Dir(ThisWorkbook.Path & "\五座神山" & "\*.xlsx")
'获得五座神山文件夹下的所有工作表的名字
Do While filename <> "" '若工作簿名字不为空,执行循环体;
If filename <> ThisWorkbook.Name Then '若工作薄名字和本工作簿名字不一致,执行以下语句;
fn = ThisWorkbook.Path & "\五座神山\" & filename '设置fn为路径;
Set twb = Workbooks.Open(fn) '打开五座神山文件下的工作簿;
ThisWorkbook.Worksheets(1).Copy before:=twb.Worksheets(1)
'将工作表复制到打开的工作簿中,且放在之前;
twb.Close True '关闭工作簿
End If
filename = Dir '继续下一个工作簿
Loop
Application.ScreenUpdating = True '开启屏幕更新
Application.DisplayAlerts = True '开启提示
End Sub

7、注释:屏幕语句不用变动;
根据你表格的情况和位置,可以改动一下语句
更改五座神山,获得你工作簿的名称。
filename = Dir(ThisWorkbook.Path & "\五座神山" & "\*.xlsx")
更改五座神山,获得你工作簿的路径。
fn = ThisWorkbook.Path & "\五座神山\" & filename '设置fn为路径;
worksheets(1),即第一个工作表;可以根据你的模版和需要加入的位置更改为其他数字。
ThisWorkbook.Worksheets(1).Copy before:=twb.Worksheets(1)
8、关闭vba编辑器,将按钮和宏命令关联起来。
关联的方法可以看我的另一篇经验贴:
https://jingyan.baidu.com/article/574c521951bc466c8c9dc16f.html

9、点击按钮,执行vb程序,打开所有的工作簿,可以看到,已经将“神山百科”批量加入到每个工作簿中了。

