excel几个表合成一张_如何把Excel的多张表格合成一张

excel表中将多个工作表合成一个工作表_一个工作薄中的多个表格合并成一个

新建一个工作表,命名后保存到和与合并的N个文件同一个文件文件夹,按 alt + f11,双击sheet1(sheet1),在右侧的代码区粘贴如下代码。运行。

Sub 合并当前目录下所有工作簿的全部工作表()Dim MyPath, MyName, AWbName

Dim Wb As Workbook, WbN As String

Dim G As Long

Dim Num As Long

Dim BOX As String

Application.ScreenUpdating = False

MyPath = ActiveWorkbook.Path

MyName = Dir(MyPath & "\" & "*.xls")

AWbName = ActiveWorkbook.Name

Num = 0

Do While MyName <> ""

If MyName <> AWbName Then

Set Wb = Workbooks.Open(MyPath & "\" & MyName)

Num = Num + 1

With Workbooks(1).ActiveSheet

.Cells(.Range("A65536").End(xlUp).Row + 2, 1) = Left(MyName, Len(MyName) - 4)

For G = 1 To Sheets.Count

Wb.Sheets(G).UsedRange.Copy .Cells(.Range("A65536").End(xlUp).Row + 1, 1)

Next

WbN = WbN & Chr(13) & Wb.Name

Wb.Close False

End With

End If

MyName = Dir

Loop

Range("A1").Select

Application.ScreenUpdating = True

MsgBox "共合并了" & Num & "个工作薄下的全部工作表。如下:" & Chr(13) & WbN, vbInformation, "提示"

End Sub

Sub 合并当前工作簿下的所有工作表()

Application.ScreenUpdating = False

For j = 1 To Sheets.Count

IfSheets(j).Name <> ActiveSheet.Name Then

X =Range("A65536").End(xlUp).Row + 1

Sheets(j).UsedRange.Copy Cells(X, 1)

End If

Next

Range("B1").Select

Application.ScreenUpdating = True

MsgBox "当前工作簿下的全部工作表已经合并完毕!", vbInformation, "提示"

End Sub

或者用这个试试

新建一个空白工作簿,按ALT+F11调出它的VBA窗口,插入一个用户模块,将下面代码粘贴进去。Sub合并工作簿()

Application.DisplayAlerts=False'关闭提示窗口

shes=Application.SheetsInNewWorkbook'工作簿中包含工作表数

Application.SheetsInNewWorkbook=1'生成的新工作簿中只有一个工作表

Setnewbok=Workbooks.Add'生成新工作簿

Setnewshe=newbok.Worksheets(1)'新工作表

s=1'从新工作表的第一行写入数据

na=Dir("d:\time\*.xls")'需要合并的所有工作表都要事先保存在D盘time文件夹下

DoWhilena<>""

Setwb=Application.Workbooks.Open("d:\time\"&na)

wb.Worksheets(1).UsedRange.Copy'复制数据

newbok.Activate

Cells(s,1).Select

ActiveSheet.Paste'执行粘贴

s=newshe.UsedRange.Rows.Count+1

Cells(s,1)=wb.Name'写入数据所属的工作簿名字

s=s+1

wb.Close'关闭工作簿

na=Dir()'取下一个工作簿Loop

Application.SheetsInNewWorkbook=shes

Application.DisplayAlerts=True

Range("a1").Select

EndSub

执行这个代码就能快速完成合并工作。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值