VBA工作簿内合并所有工作表

Sub MergeSheets() '工作簿内合并所有工作表
    Dim sheetsCount As Long '定义 工作簿内工作表数量 赋值为 sheetCount 数据类型为 Long(长整型)
    Dim rowCount As Long '定义 汇总表行数 赋值为 rowCount 数据类型为 Long(长整型)
    Dim i As Long '定义 循环标识 赋值为 i 数据类型为 Long(长整型)
    With ThisWorkbook
        sheetsCount = .Sheets.Count '获取工作表总数量
        .Sheets.Add After:=.Sheets(.Sheets.Count) '新建一个工作簿
        .Sheets(.Sheets.Count).Name = "汇总" '设置新建工作簿名为 汇总
        For i = 1 To sheetsCount
            .Sheets(i).UsedRange.Copy '逐个循环复制表内已使用单元格区域
            With .Sheets("汇总")
                rowCount = .Range("A" & 2 ^ 20).End(xlUp).Row + 1 '粘贴前获取 汇总 表中已使用单元格行数的下一行行数
                .Range("A" & rowCount).Select '选中A列该行所在单元格
                .Paste '执行粘贴
            End With
        Next
        .Sheets("汇总").Move before:=.Sheets(1) '把汇总表移动到开头
    End With
End Sub

猜你喜欢

转载自blog.csdn.net/qq_18301257/article/details/82495514