VBA. 宏 翻译 Sub 合并当前工作簿下的所有工作表() Application.ScreenUpdating =

VBA.宏翻译Sub合并当前工作簿下的所有工作表()Application.ScreenUpdating=FalseForj=1ToSheets.CountIfSheet... VBA. 宏 翻译
Sub 合并当前工作簿下的所有工作表()
Application.ScreenUpdating = False
For 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 If
Next
Range("B1").Select
Application.ScreenUpdating = True
MsgBox "当前工作簿下的全部工作表已经合并完毕!", vbInformation, "提示"
End Sub
展开
 我来答
Sc耳总
2016-11-17 · 超过64用户采纳过TA的回答
知道小有建树答主
回答量:83
采纳率:100%
帮助的人:67.9万
展开全部
啥意思?注释这些代码?

Sub 合并当前工作簿下的所有工作表()
Application.ScreenUpdating = False '关闭屏幕刷新
For j = 1 To Sheets.Count '在工作表内循环,从第1张到最后一张表
If Sheets(j).Name <> ActiveSheet.Name Then '如果第j张表的表名不等于当前激活的工作表名(意思就是除了你当前激活的工作表,其他表都执行一遍循环内的代码),则
X = Range("A65536").End(xlUp).Row + 1 'X等于汇总表A列已使用的单元格所在行的下面第一个空行(意思就是汇总表如果A1单元格那行有内容而A2单元格是空的,那X就等于A2单元格那行的行数,即X=2)
Sheets(j).UsedRange.Copy Cells(X, 1) '将第j张表的已使用单元格内容复制到汇总表第X行第1列(说白了这句就是把每张分表的内容复制粘贴到总表。)
End If
Next
Range("B1").Select '选择B1单元格
Application.ScreenUpdating = True ‘打开屏幕刷新
MsgBox "当前工作簿下的全部工作表已经合并完毕!", vbInformation, "提示" '弹出信息框告诉你当前当前工作簿下的全部工作表已经合并完毕!
End Sub
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式