帮我解释下这段VBA里面是什么意思

Sub 合并工作薄() Dim FilesToOpen Dim x As Integer On Error GoTo ErrHandler Application.ScreenUpdating = False FilesToOpen = Application.GetOpenFilename _ (FileFilter:="MicroSoft Excel文件(*.xls), *.xls", _ MultiSelect:=True, Title:="要合并的文件") If TypeName(FilesToOpen) = "Boolean" Then MsgBox "没有选中文件" GoTo ExitHandler End If x = 1 While x <= UBound(FilesToOpen) Workbooks.Open Filename:=FilesToOpen(x) Sheets().Move After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count) x = x + 1 WendExitHandler: Application.ScreenUpdating = True Exit SubErrHandler: MsgBox Err.Description Resume ExitHandlerEnd Sub

如下注释,如还有不明之处
可以再问:
Sub 合并工作薄()
Dim FilesToOpen
Dim x As Integer
On Error GoTo ErrHandler
Application.ScreenUpdating = False '禁用屏幕刷新,提高代码运行效率
FilesToOpen = Application.GetOpenFilename _
(FileFilter:="MicroSoft Excel文件(*.xls), *.xls", _
MultiSelect:=True, Title:="要合并的文件") '弹出打开文件界面,显示并选择要合并的Excel文件,支持多选
If TypeName(FilesToOpen) = "Boolean" Then '未做任何选择
MsgBox "没有选中文件" '则提示没有选中文件
GoTo ExitHandler '然后跳转至ExitHandler
End If
x = 1
While x <= UBound(FilesToOpen) 'x从1到打开文件的个数循环
Workbooks.Open Filename:=FilesToOpen(x) '以此打开文件
Sheets().Move After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count) '将打开的文件工作表移动到这个工作表的最后一个工作表后面
x = x + 1
Wend
ExitHandler: '如果不选择文件,不执行上述文件合并操作
Application.ScreenUpdating = True '启用屏幕刷新并退出程序
Exit Sub
ErrHandler:
MsgBox Err.Description '如果出现错误,弹框提示错误
Resume ExitHandler '返回ExitHandler,即启用屏幕刷新并退出程序
End Sub追问

如果我想从打开的工作表里,从第四行开始复制到这个工作表的最后一个工作表后面

就是“Sheets().Move After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count) '将打开的文件工作表移动到这个工作表的最后一个工作表后面”

怎么修改呢?
(另外:每个工作簿都有2个工作表,名字分别是“PC端” 和 “无线端”,怎么分别汇总)

温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-02-04
这几天反正也不出去,正好学习下工作薄(表)合并的VBA代码。
首先,鱼木混猪,于2017-06-09推荐的代码很好,受益。
其次,试着回答一下您在追问中有关去除工作表前4行再复制到当前工作薄的问题。
1.合并工作薄 、合并工作表是两个问题,题主贴出的代码是解决合并工作薄的。

合并工作薄的时候,最小操作粒度是工作表,是对整个工作表进行移动、复制
2.如果要实现题主在追问中有关去除工作表前4行的要求,就涉及合并工作表的问题了

合并工作表,可以操作到具体行。
猜测,题主是想去除多余的表头。

也看到晚上有代码,同时解决合并工作薄与工作表的,但有些繁琐,一段代码解决一个问题,模块化实现,需要的时候调用相应的功能模块就好。
反正用VBA对程序执行效率要求不是太高,再慢也比人工手动操作快。
还是模块化实现,这样层次、逻辑更清晰,代码重复使用率也更高。

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网