同目录多表格合并一张新EXECL

本文提供了一个使用VBA自动化处理多个Excel文档的脚本示例,适用于Office 2003版本。对于Office 2007及更高版本,需调整代码中的文件格式识别部分。步骤包括新建EXCEL文档、宏编辑器操作、脚本复制与执行。

Sub cfl() Dim fs, f, f1, fc, s, x, rowss, columnss Set fs = CreateObject("Scripting.FileSystemObject") Set f = fs.GetFolder("D:\") '这里指定你多文档的目录 Set fc = f.Files x = 1 For Each f1 In fc If Right(f1.Name, 3) = "xls" Then '这里修改多文档的格式 Workbooks.Open (f1.Path) rowss = Workbooks(f1.Name).Sheets(1).Range("A65536").End(xlUp).Row columnss = Workbooks(f1.Name).Sheets(1).Columns.Count Workbooks(f1.Name).Sheets(1).Range("A1:z" & CStr(rowss)).Copy Workbooks(1).Activate Workbooks(1).Sheets(1).Range("A" & CStr(x) & ":z" & CStr(x + rowss)).Select Workbooks(1).Sheets(1).Paste Application.CutCopyMode = False x = x + rowss Workbooks(f1.Name).Close savechanges:=False End If Next End Sub


本列以OFFICE2003为准,如果是2007版,请将第10行If Right(f1.Name, 3) = "xls" Then语句中的xls修改成xlsx,这里也主要是看你多文档的格式是什么

1.新建一个EXECL文档,菜单里选择:工具-宏-Visual Basic编辑器,右键sheet1查看代码,复制粘贴上面的代码,保存.

2.关闭Visual Basic编辑器,菜单里选择:工具-宏-宏.在弹出的窗体中,位置:所有打开的工作簿-执行.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值