合并拆分多个excle的代码.docx_第1页
合并拆分多个excle的代码.docx_第2页
合并拆分多个excle的代码.docx_第3页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

拆分:把单个excle表格中的多个sheet,分成多个单个excel如:123.xls含有三个sheet分别为a、b、c;拆分成a.xls、 b.xls、 c.xls,拆分后的a.xls、 b.xls、 c.xls含有相同名称的sheet,方法如下:1. 打开excel表,并右键单击sheet1,点击“查看代码”。2. 复制如下代码到空白处3. 点击运行运行子过程,10秒生成到桌面上4. Alt+F11返回Sub Macro1() Dim sht As Worksheet Dim shtName As String shtName = Sheet1 Application.ScreenUpdating = False Application.DisplayAlerts = False For Each sht In Sheets sht.Copy ActiveWorkbook.Sheets(1).Name = shtName ActiveWorkbook.SaveAs Filename:=ThisWorkbook.Path sht.Name .xls ActiveWorkbook.Close Next Application.DisplayAlerts = True Application.ScreenUpdating = TrueEnd Sub合并:同一Excel表格中的多个sheet全部合并到sheet1如:123.xls含有三个sheet分别为a、b、c;将b、c数据全部合并到a中,方法如下:1、 打开excel表,右击sheet1,左击“查看代码”2、 复制如下代码到空白处3、 点击运行运行子过程,10秒合并完成4、 Alt+F11返回Sub 合并当前工作簿下的所有工作表()Application.ScreenUpdating = FalseFor j = 1 To Sheets.Count If Sheets(j).Name ActiveSheet.Name Then X = Range(A65536).End(xlUp).Row + 1 Sheets(j).UsedRange.Copy Cells(X, 1) End IfNextRange(B1).SelectApplication.ScreenUpdating = TrueMsgBox 当前工作簿下的全部工作表已经合并完毕!, vbInformation, 提示End Sub合并:将多个excel合并成一个excel中多个sheet如:将a.xls、 b.xls、 c.xls合并成123.xls;其中123.xls包含三个sheet:a、b、c。方法如下:5. 将多个excel放到同一个文件夹中,在文件夹中新建一个表格6. 打开新建表格7. 右击sheet1,点击“查看代码”8. 复制如下代码9. 运行运行子过程10. 一起选中多个excel,确定保存11. Alt+F11返回Sub Books2Sheets()定义对话框变量Dim fd As FileDialogSet fd = Application.FileDialog(msoFileDialogFilePicker)新建一个工作簿Dim newwb As WorkbookSet newwb = Workbooks.AddWith fdIf .Show = -1 Then定义单个文件变量Dim vrtSelectedItem As Variant定义循环变量Dim i As Integeri = 1开始文件检索For Each vrtSelectedItem In .SelectedItems打开被合并工作簿Dim tempwb As WorkbookSet tempwb = Workbooks.Open(vrtSelectedItem)复制工作表tempwb.Worksheets(1).Copy Before:=newwb.Worksheets(i)把新工作簿的工作表名字改成被复制工作簿文件名,这儿应用于xls文件,即Excel97-2003的文件,如果是Excel2007,需要改成xlsxnewwb.Worksheets(i).Name = VBA.Replace(tempwb.Name, .xls, )关闭被合并工作簿tempwb.Close SaveChanges:=Falsei = i + 1Next vrtSelectedItemEnd IfEnd WithSet fd = NothingEnd Sub合并:将多个excel合并成一个excel中一个sheet如:将a.xls、 b.xls、 c.xls合并成123.xls;其中123.xls包含一个sheet:d。方法如下:12. 将多个excel放到同一个文件夹中,在文件夹中新建一个表格13. 打开新建表格14. 右击sheet1,点击“查看代码”15. 复制如下代码16. 运行运行子过程17. 一起选中多个excel,确定保存18. Alt+F11返回Sub 合并当前目录下所有工作簿的全部工作表()Dim MyPath, MyName, AWbNameDim Wb As Workbook, WbN As StringDim G As LongDim Num As LongDim BOX As StringApplication.ScreenUpdating = FalseMyPath = ActiveWorkbook.PathMyName = Dir(MyPath *.xls)AWbName = ActiveWorkbook.NameNum = 0Do While MyName If MyName AWbName ThenSet Wb = Workbooks.Open(MyPath MyName)Num = Num + 1With Workbooks(1).ActiveSheet.Cells(.Range(B65536).End(xlUp).Row + 2, 1) = Left(MyName, Len(MyName) - 4)For G = 1 To Sheets.CountWb.Sheets(G).UsedRange.Copy .Cells(.Range(B65536).End(xlUp).Row + 1, 1)NextWbN = WbN Chr(13) Wb.NameWb.Close FalseEnd Wi

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论