宏代码-合并工作表_第1页
宏代码-合并工作表_第2页
宏代码-合并工作表_第3页
宏代码-合并工作表_第4页
宏代码-合并工作表_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

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

文档简介

宏代码—工作表合并一、关于宏的EXCEL设置1.设置快捷宏图标:文件—EXCEL选项-常用-在功能区显示“开发工具〞选项卡打钩2.删除宏:宏-选中相应的宏-删除3.取消出现平安隐私警告:EXCEL选项-信任中心-信任中心设置-个人信息选项-将〞保存时从文件属性中删除个人信息“前面的勾去掉二、合并当前工作簿下的所有工作表1.我们现在开始合并,首先要在最前页新建一个工作表。如图:2.在新建的sheet表中“右键〞,找到“查看代码〞,然后看到宏计算界面。如下图:看到宏计算界面,我们就只需要把下面的代码复制进去,代码如下,效果如下:Sub合并当前工作簿下的所有工作表()Application.ScreenUpdating=FalseForj=1ToSheets.Count

IfSheets(j).Name<>ActiveSheet.NameThen

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

Sheets(j).UsedRange.CopyCells(X,1)

EndIfNextRange("B1").SelectApplication.ScreenUpdating=TrueMsgBox"当前工作簿下的全部工作表已经合并完毕!",vbInformation,"提示"EndSub或者如下:Sub

合并()

For

I

=

2

To

Sheets.Count

'如果工作表的第一行都一样,就把下Rows("1"

&

的1改成2就好了Sheets(I).Rows("1"

&

":"

&

Sheets(I).Range("A60000").End(xlUp).Row).

_

Copy

Range("A"

&

Range("A60000").End(xlUp).Row

+

1)

Next

End

Sub53.点击工具栏上面的“运行〞下的“运行子过程/用户窗体〞就可以了,合并完之后会有提示。提示完成之后就可以把宏计算界面关闭了。如下图:4.合并完成后记得删除宏,详细操作见一5.删除多余的首行标题:工作表全选—自动筛选—选择列〔建议选择文本选项少的列〕--勾选重复的标题与空白—删除重复标题与空白三、合并当前目录下所有工作簿的全部工作表1.我们需要把多个excel表都放在同一个文件夹里面,并在这个文件夹里面新建一个excel。如下图:2.用microsoftexcel翻开新建的excel表,并右键单击sheet1,找到“查看代码〞,单击进去。进去之后就看到了宏计算界面。如下图:3.然后我们把下面这些宏计算的代码复制进去〔注意XLS或者XLSX〕,代码如下,如下图:Sub合并当前目录下所有工作簿的全部工作表()DimMyPath,MyName,AWbNameDimWbAsWorkbook,WbNAsStringDimGAsLongDimNumAsLongDimBOXAsStringApplication.ScreenUpdating=FalseMyPath=ActiveWorkbook.PathMyName=Dir(MyPath&"\"&"*.xls")AWbName=ActiveWorkbook.NameNum=0DoWhileMyName<>""IfMyName<>AWbNameThenSetWb=Workbooks.Open(MyPath&"\"&MyName)Num=Num+1WithWorkbooks(1).ActiveSheet.Cells(.Range("B65536").End(xlUp).Row+2,1)=Left(MyName,Len(MyName)-4)ForG=1ToSheets.CountWb.Sheets(G).UsedRange.Copy.Cells(.Range("B65536").End(xlUp).Row+1,1)NextWbN=WbN&Chr(13)&Wb.NameWb.CloseFalseEndWithEndIfMyName=DirLoopRange("B1").SelectApplication.ScreenUpdating=TrueMsgBox"共合并了"&Num&"个工作薄下的全部工作表。如下:"&Chr(13)&WbN,vbInformation,"提示"EndSub4.然后找到工具栏上面的“运行〞下的“运行子过程/用户窗体〞5.合并完成后记得删除宏,详细操作见一6.删除多余的首行标题:工作表全选—自动筛选—选择列〔建议选择文本选项少的列〕--勾选重复的标题与空白—删除重复标题与空白四、多个Excel工作簿的第一个工作表合并成一个新的工作簿1、将需要合并的excel工作簿文件放置在一个文件夹中。2、在该文件夹中,新建立一个新的excel工作簿文件。3、翻开新建立的excel工作簿文件,将鼠标移动到下方工作表名称sheet1上右键,选择查看代码。4、在弹出的代码编辑窗口中,输入代码。5、在代码窗口中,粘贴以下代码:PrivateSub合并工作薄()Dimf_nameAsStringDimbok1AsWorkbook,bok2AsWorkbookSetbok2=Nothingf_name=Dir(ThisWorkbook.Path&"\*.*")'获得该目录下的所有EXCEL文件DoWhilef_name<>""'开始执行循环Iff_name<>ThisWorkbook.NameThen'如果当前的文件不是代码所在文件,执行合并操作Setbok1=Workbooks.Open(ThisWorkbook.Path&"\"&f_name)'翻开被合并的文件Ifbok2IsNothingThen'合并后的文件是否存在bok1.Sheets(1).Copy'如果合并后的文件不存在,那么创立一个Setbok2=ActiveWorkbookElsebok1.Sheets(1).CopyBefore:=bok2.Sheets(1)'如果合并后的文件存在,那么将被合并文件的第一个工作表复制到合并文件中。EndIfbok1.Close'关闭被合并文件EndIff_name=Dir()'获取下一个被合并文件名LoopEndSub6、点击菜单栏运行-运行子过程-用户窗体。关闭代码输入窗口。翻开excel工作簿,可以看到下方已经将之前工作簿中的工作表都复制到了这一新建工作簿中。五、多个Excel工作簿的所有工作表〔非空白〕合并成一个新的工作簿1、将需要合并的excel工作簿文件放置在一个文件夹中。2、在该文件夹中,新建立一个新的excel工作簿文件。3、翻开新建立的excel工作簿文件,将鼠标移动到下方工作表名称sheet1上右键,选择查看代码。4、在弹出的代码编辑窗口中,输入代码。5、在代码窗口中,粘贴以下代码:Sub合并工作薄()DimPathAsStringDimFileNameAsStringDimLastCellAsRangeDimWkbAsWorkbookDimWSAsWorksheetDimThisWBAsStringDimMyDirAsStringMyDir=ThisWorkbook.Path&"\"'ChDriveLeft(MyDir,1)'findalltheexcelfiles'ChDirMyDir'Match=Dir$("")ThisWB=ThisWorkbook.NameApplication.EnableEvents=FalseApplication.ScreenUpdating=FalsePath=MyDirFileName=Dir(Path&"\*.xls",vbNormal)DoUntilFileName=""IfFileName<>ThisWBThenSetWkb=Workbooks.Open(FileName:=Path&"\"&FileName)ForEachWSInWkb.WorksheetsSetLastCell=WS.Cells.SpecialCells(xlCellTypeLastCell)IfLastCell.Value=""AndLastCell.Address=Range("$A$1").AddressThenElseWS.CopyAfter:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)

温馨提示

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

评论

0/150

提交评论