EXCEL多表格合并公式.docx_第1页
EXCEL多表格合并公式.docx_第2页
EXCEL多表格合并公式.docx_第3页
EXCEL多表格合并公式.docx_第4页
免费预览已结束,剩余1页可下载查看

下载本文档

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

文档简介

用宏实现:新建一个工作表,命名后保存到和与合并的n个文件同一个文件文件夹,按 alt + f11,双击工程资源管理器里面的sheet1(sheet1),在右侧的代码区粘贴如下代码。运行。等候一会就ok了。 宏1:合并当前目录下所有工作簿的全部工作表到当前工作表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 宏2:多个文件表合到一个文件表的多个sheet中sub combineworkbooks() dim filestoopen, ft dim x as integer application.screenupdating = false on error goto errhandler filestoopen = application.getopenfilename _ (filefilter:=micrsofe excel文件(*.xls), *.xls, _ multiselect:=true, title:=要合并的文件) if typename(filestoopen) = boolean then msgbox 没有选定文件 goto errhandler end if x = 1 while x = ubound(filestoopen) set wk = workbooks.open(filename:=filestoopen(x) wk.sheets().move after:=thisworkbook.sheets _ (thisworkbook.sheets.count) x = x + 1 wend msgbox 合并成功完成!errhandler: msgbox err.description resume errhandlerend sub如何合并格式相同的excel表格青岛经济技术开发区审计局 靳大陆在日常审计中,为了能利用现场审计实施系统(以下简称“ao系统”)对数据进行分析,首先需要将采集的原始数据导入到ao系统中。然而,审计中采集的数据经常会是大量格式相同的excel表格,如果分别将这些表格导入ao系统,则需要耗费大量时间进行重复的导入操作,降低了审计效率。笔者通过计算机审计中级培训以及工余时间自学的计算机相关技术知识,创新思维方式,巧妙利用excel的vba功能,编写程序,实现将大量格式相同的excel表格合并到一个表格中,然后再导入ao系统,进行下一步数据分析。具体合并步骤如下:1.将所有格式相同的excel表格保存到一个文件夹内;2.在文件夹内新建一个excel工作表,命名为“汇总表”;3.打开汇总表,按“ alt + f11”打开vba开发环境,双击工程资源管理器里面的sheet1(sheet1),在右侧的代码区编写如下代码:sub 合并当前目录下所有工作簿的全部工作表()dim mypath, myname, awbnamedim wb as workbook, wbn as stringdim g as longdim num, ini as longapplication.screenupdating = falsemypath = activeworkbook.pathmyname = dir(mypath & & *.xls)awbname = activeworkbook.namenum = 0ini = 0do while myname if myname awbname thenset wb = workbooks.open(mypath & & myname)num = num + 1with workbooks(1).activesheetif ini = 0 thenwb.sheets(1).range(wb.sheets(1).cells(1, 1),wb.sheets(1).cells(1,wb.sheets(1).usedrange.columns.count).copy .cells(1, 1)ini=1end iffor g=1 to sheets.countwb.sheets(g).range(wb.sheets(g).cells(2,1),wb.sheets(g).cells(wb.sheets(g).usedrange.rows.count,wb.sheets(g).usedrange.columns.count).copy .cells(.range(a65536).end(xlup).row+1,1)nextwbn=wbn & chr(13) & wb.namewb.close falseend withend ifmyname=dirlooprange(a1).selectapplication.screenupdating = truemsgbox 共合并了 & num & 个工作薄下的全部工作表。如下: & chr(13) & wbn, vbinformati

温馨提示

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

评论

0/150

提交评论