首页 编程设计VBA编程正文

轻松合并并计算海量Excel表格、工作表

云水 VBA编程 2019-12-16 15:47:37 1740 0 VBA

又到年底了,许多公司开始统计之前每月的销售表格,做一个整年的销售统计表。有的小公司的表格可能不是很多,手动就可以整好。但是对于一些需要整合大量表格的公司来说是一件很费时的事情。所以,易老师这里分享几个快速合并并计算表格、工作表的方案!

一个表格中多个表合并计算

先从简单的看起!在一个表格中合并计算多个表。【数据】-【数据工具】-【合并计算】。

轻松合并并计算海量Excel表格、工作表

合并计算多个工作簿中的表格

方法同上,这个适用于少量表格。

轻松合并并计算海量Excel表格、工作表

大量Sheet需要合并

这个我们可以用一下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 "OK啦!", vbInformation, "提示"

End Sub

轻松合并并计算海量Excel表格、工作表

大量表格及表格中的Sheet需要合并

代码如下:

Sub 合并当前目录下所有工作簿的全部工作表()

Dim MyPath, MyName, AWbName

Dim Wb As Workbook, WbN As String

Dim G As Long

Dim Num As Long

Dim BOX As String

Application.ScreenUpdating = False

MyPath = ActiveWorkbook.Path

MyName = Dir(MyPath & "" & "*.xls")

AWbName = ActiveWorkbook.Name

Num = 0

Do While MyName <> ""

If MyName <> AWbName Then

Set Wb = Workbooks.Open(MyPath & "" & MyName)

Num = Num + 1

With Workbooks(1).ActiveSheet

.Cells(.Range("B65536").End(xlUp).Row + 2, 1) = Left(MyName, Len(MyName) - 4)

For G = 1 To Sheets.Count

Wb.Sheets(G).UsedRange.Copy .Cells(.Range("B65536").End(xlUp).Row + 1, 1)

Next

WbN = WbN & Chr(13) & Wb.Name

Wb.Close False

End With

End If

MyName = Dir

Loop

Range("B1").Select

Application.ScreenUpdating = True

MsgBox "共合并了" & Num & "个工作薄下的全部工作表。如下:" & Chr(13) & WbN, vbInformation, "提示"

End Sub

 

轻松合并并计算海量Excel表格、工作表

轻松合并并计算海量Excel表格、工作表

大量表格合并后求和计算

大量的数据在一个表格中,这个时候合并计算,我们可以用数据透视表,快速的搞定。

轻松合并并计算海量Excel表格、工作表


版权声明

1.本站大部分下载资源收集于网络,不保证其完整性以及安全性,请下载后自行测试。
2.本站资源仅供学习和交流使用,版权归资源原作者所有,请在下载后24小时之内自觉删除。
3.若作商业用途,请购买正版,由于未及时购买和付费发生的侵权行为,与本站无关。
4.若内容涉及侵权或违法信息,请联系本站管理员进行下架处理,邮箱ganice520@163.com(本站不支持其他投诉反馈渠道,谢谢合作)

本文链接:http://apod.cc/index.php/post/210.html

发表评论

评论列表(0人评论 , 1740人围观)
☹还没有评论,来说两句吧...