


下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、快速合并多个Excel工作簿到一个新的工作簿 如果你有大量Excel工作簿需要合并到一起时,要是你手动完成这一工作,也许这个工作可能将花费你一整天的时间。其实要完成这类合并工作,最好的方法是使用宏,这样的话短时间内甚至只需几分钟便可完成。本文所介绍的技巧将向你说明如何创建这样一个宏,看看如何使用宏来节省你的宝贵时间。此技巧可以应用于Microsoft Excel 2003/2007/2010/2013等版本,只是在弹出VBA代码窗口(Microsoft Visual Basic窗口、Microsoft Visual Basic for Applications窗口)时会因Excel版本不同而有
2、所差异。 此方法支持:被合并的扩展名为“.xls”和“.xlsx”的工作簿、合并中可多次选择不同文件夹下的工作簿。 将需要合并的excel工作簿文件放置在一个文件夹中以便于选择(如果放于不同文件下,则需要在提示“是否继续添加其他文件夹中的Excel工作簿文件?”时选择“是”),这些工作簿总数适宜100个左右或以下,不要求工作簿中只包含一个单独的工作表,允许部分工作簿包含多个工作表(以电脑配置或者说电脑可用资源为上限,没有固定的值,如果处理过多时excel没有响应或电脑假死甚至死机时,请减少待合并工作簿的数量),建议在合并前删除待合并的工作簿中的空工作表。 在该文件夹中,新建立一个新的Excel
3、工作簿文件。打开新建的Excel工作簿文件,按Alt+F11或者将鼠标移动到下方工作表名称sheet1上右键,选择查看代码。 在弹出的代码编辑窗口中(如下图)粘贴以下代码(如果没有出现直接复制代码的面板等时,需要按Ctrl+R或点菜单栏中“视图”中的“工程资源管理器”,再双击出现在左上方的“工程 VBAProject”中的“Sheet1”,即可打开代码窗口;宏代码应粘贴到除ThisworkBook外的工作表中):Sub CombineWorkbooks() Source code from the Internet for free Daxin CPA Guangdong Branch Hoo
4、hurtle modified on July 27, 2014 Dim FilesToOpen Dim x As Integer On Error GoTo ErrHandler Application.ScreenUpdating = FalseExtension1: FilesToOpen = Application.GetOpenFilename(FileFilter:=Microsoft Excel 97-2003工作簿文件(*.xls),*.xls, MultiSelect:=True, Title:=请选择待合并的工作簿文件) If TypeName(FilesToOpen) =
5、 Boolean Then MsgBox 没有选中Excel 97-2003工作簿文件 GoTo Extension2 End If x = 1 While x = UBound(FilesToOpen) Workbooks.Open Filename:=FilesToOpen(x) Sheets().Move After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count) x = x + 1 Wend Extension2: FilesToOpen = Application.GetOpenFilename(FileFilter:=Microsof
6、t Excel工作簿文件(*.xlsx),*.xlsx, MultiSelect:=True, Title:=请选择待合并的工作簿文件) If TypeName(FilesToOpen) = Boolean Then MsgBox 没有选中Excel工作簿文件 GoTo Continue End If x = 1 While x = UBound(FilesToOpen) Workbooks.Open Filename:=FilesToOpen(x) Sheets().Move After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count) x =
7、x + 1 Wend Continue: Dim Msg$, Style&, Title$, Continue& Msg = 是否继续添加其他文件夹中的Excel工作簿文件? Style = vbYesNo + vbDefaultButton2 Title = 是否继续添加其他工作簿 Continue = MsgBox(Msg, Style, Title) If Continue = vbYes Then GoTo Extension1 Else GoTo Over End IfOver:ExitHandler: Application.ScreenUpdating = True Exit S
8、ubErrHandler: MsgBox Err.Description Resume ExitHandlerEnd Sub 接着按F5或点菜单栏中“运行”中的“运行子过程/窗体”(或“运行子过程/用户窗体”,因Excel版本不同而出现差异),此时会提示你选择要合并的文件(此时你可以通过按下Ctrl键单击的方法选择多个工作簿,或按“Ctrl + A”选择全部工作簿),它会使用代码在你所选择的工作簿列表中循环,打开每个工作簿并将其中的工作表移动到工作簿的末尾。在将工作表添加到工作簿末尾的过程中,Excel会复制工作表的名称并自动根据检测结果附加(2)、(3)等数字编号。工作簿中与其他工作表相关的任何公式也会自动更新的新的名称。 然后将“代码编辑窗口”中的代码清空(以免产生宏安全提示),并将合并后得到的工作秒簿保存即可。 请考虑Excel兼容性问题,尽量在Office2007以上版本的Excel中操作,如果在Excel2003中操作时,必要时请安装“OFFICE2003兼容2007的补丁包”(FileFormatConverters.exe版
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年企业级安全培训考试试题ab卷
- 2024年小学六年级语文志愿服务体验题试题及答案
- 2025年小学语文教育框架试题及答案
- 药物变迁与历史试题及答案
- 2024年汽车保养常用工具介绍试题及答案
- 语文考试一年级复习重难点试题及答案
- 跳出舒适区的计算机基础试题及答案
- 2024年汽车维修工工具使用方法试题及答案
- 汽车美容培训与考试需求分析及试题与答案
- 二手车评估工作中的服务质量管理试题及答案
- (一模)青岛市2025年高三年级第一次适应性检测地理试卷(含标准答案)
- 2025年铁岭卫生职业学院单招职业技能测试题库学生专用
- 2025年公务员遴选考试公共基础知识必考题库170题及答案(九)
- 广告投放预算分配情况统计表(按预算项目)
- 2025年高考预测猜题 化学 信息必刷卷01(新高考 通 用)(解析版)
- 压疮的六个分期及护理措施
- 沪教版(五四学制)(2024)六年级数学下册 第六章 圆和扇形 单元测试题(含解析)
- 2025年开封大学单招职业技能测试题库完整
- 30-提前介入在建高铁的实践与思考5则范文
- 职业教育培训需求分析课件
- 2025版矿山安全生产责任承包协议范本3篇
评论
0/150
提交评论