分享

合并一个EXCEL多个sheet的内容到一个汇总sheet

 xctdlxg 2017-06-23

将一个excel文档中的多个工作表进行合并为一个工作表

打开要合并的工作簿

按alt+F11进入VBA工程界面

新建一个模块

复制下面的代码,然后执行即可

作用结果是:

它会新建一个叫做“汇总”的工作表,然后把当前工作簿里的所有Sheet里有数据的内容都复制到“汇总”表里。提示:如果数据表里的内容没有表头的话需要把StartRow = 2改成StartRow = 1

  1. Function LastRow(sh As Worksheet)

  2. On Error Resume Next

  3. LastRow = sh.Cells.Find(what:="*", _

  4. After:=sh.Range("A1"), _

  5. Lookat:=xlPart, _

  6. LookIn:=xlFormulas, _

  7. SearchOrder:=xlByRows, _

  8. SearchDirection:=xlPrevious, _

  9. MatchCase:=False).Row

  10. On Error GoTo 0

  11. End Function

  12. Sub MergeSheets()

  13. Dim sh As Worksheet

  14. Dim DestSh As Worksheet

  15. Dim Last As Long

  16. Dim shLast As Long

  17. Dim CopyRng As Range

  18. Dim StartRow As Long

  19. Application.ScreenUpdating = False

  20. Application.EnableEvents = False

  21. '新建一个“汇总”工作表

  22. Application.DisplayAlerts = False

  23. On Error Resume Next

  24. ActiveWorkbook.Worksheets("汇总").Delete

  25. On Error GoTo 0

  26. Application.DisplayAlerts = True

  27. Set DestSh = ActiveWorkbook.Worksheets.Add

  28. DestSh.Name = "汇总"

  29. '开始复制的行号,忽略表头,无表头请设置成1

  30. StartRow = 2

  31. For Each sh In ActiveWorkbook.Worksheets

  32. If sh.Name <> DestSh.Name Then

  33. Last = LastRow(DestSh)

  34. shLast = LastRow(sh)

  35. If shLast > 0 And shLast >= StartRow Then

  36. Set CopyRng = sh.Range(sh.Rows(StartRow), sh.Rows(shLast))

  37. If Last + CopyRng.Rows.Count > DestSh.Rows.Count Then

  38. MsgBox "内容太多放不下啦!"

  39. GoTo ExitSub

  40. End If

  41. CopyRng.Copy

  42. With DestSh.Cells(Last + 1, "A")

  43. .PasteSpecial xlPasteValues

  44. .PasteSpecial xlPasteFormats

  45. Application.CutCopyMode = False

  46. End With

  47. End If

  48. End If

  49. Next

  50. ExitSub:

  51. Application.GoTo DestSh.Cells(1)

  52. DestSh.Columns.AutoFit

  53. Application.ScreenUpdating = True

  54. Application.EnableEvents = True

  55. End Sub

合并一个EXCEL多个sheet的内容到一个汇总sheet

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多