本代码源自网络,不知作者是谁。我在分析完代码后,添加了注释,分享给大家,希望对大家有用。直接复制就可以运行了。
'#######################################################################################################
'使用说明:
'本代码适用的Excel文件特征如下;
'一个Excel文件有多个sheet页,每个sheet页都有一样的标题,需要将多个sheet页合并到一个sheet页
'当前工作簿新建一个sheet,执行下面代码,将其它sheet合并到此sheet页
'如果当前执行代码的文件格式为xls格式,第二行注释下面的那一行的代码的A1048576需要改成A65536;
'#######################################################################################################
Sub 合并当前工作簿下的所有工作表()
Application.ScreenUpdating = False '第一行注释,关闭实时显示执行效果
For j = 1 To Sheets.Count
If Sheets(j).Name <> ActiveSheet.Name Then
X = Range("A1048576").End(xlUp).Row + 1 '第二行注释,当前工作表非空区域最后一行+1,适用于XLSX格式,如果操作为XLS格式文档,需要将A1048576修改为A65536
Sheets(j).UsedRange.Copy Cells(X, 1) '第三行注释,将sheet页活动区域复制到当前工作表第X行1列
End If
Next
Range("A1").Select '第四行注释,执行完sheet页复制后,光标落在A1单元格
Application.ScreenUpdating = True '第五行注释,关闭实时显示执行效果
MsgBox "当前工作簿下的全部工作表已经合并完毕!", vbInformation, "提示"
End Sub