当前位置: 首页 > 办公技巧 > 正文

wps数量统计办公技巧(汇总几百个工作簿的数据,这方法1分钟就学会,工作1分钟就搞定)

  • 叁碗诸角 叁碗诸角
  • 办公技巧
  • 2023-07-07 15:29:21
  • 0

昨天发了一个汇总工作簿数据的PowerQuery教程,有同学就反应,是旧版本的Excel用不了,也有同学反应是WPS,没有这功能,今天我们就来个通用的方法。如果你经常我们需要合并N多工作簿中的数据到一个工作表中,这文章不要错过,收藏下,以后直接就可以用了。

要汇总数据,其实方法是比较多的,但是各有优缺点,而用VBA来做,简单易行,任意版本的Excel都可以用(WPS的同学,请自行安装VBA插件)。

1、合并的源文件介绍:

一共包括了3个Excel工作簿文件,在每个工作簿中又有两个工作表,这些表格的结构是一样的,包括了商品名称,销售数量,销售金额等等;

原始数据

2、操作步骤

2.1 关闭刚才预览的三个Excel文件,并在同文件夹下,新建一个Excel文件,如图所示,汇总.xlsx就是刚才新建的

新建文件

2.2、打开汇总文件,在工作表标签sheet1上面点右键,选择查看代码(也可以按键盘上面的快捷键 Alt F11,一样的功能)

编辑代码

2.3 粘贴代码,运行

按照下图的1 2 3 的顺序,搞定就可以了,点击3以后,一切都是自动的,程序会依次打开文件,汇总数据,大概3~5秒(若数据多,时间稍长,待屏幕不闪动了),就完成

代码执行

2.4 关闭代码窗口,看看是不是有数据了?

检查结果

2.5 若以后还想使用本工作簿,在另存的时候,记得要保存成 "启用宏的工作簿.xlsm"

附代码如下:

直接复制下面的的代码,就可以了

Sub 合并多个工作簿()Dim MyPath$, MyName$, sh As Worksheet, sht As Worksheet, m&Set sh = ActiveSheetMyPath = ThisWorkbook.Path & ""MyName = Dir(MyPath & "*.*")Application.ScreenUpdating = FalseCells.ClearContentsDo While MyName <> ""If MyName <> ThisWorkbook.Name ThenWith GetObject(MyPath & MyName)For Each sht In .SheetsIf IsSheetEmpty = IsEmpty(sht.UsedRange) Thenm = m 1If m = 1 Thensht.[a1].CurrentRegion.Copy sh.[a1]Elsesht.[a1].CurrentRegion.Copy sh.[a65536].End(xlUp).Offset(1)End IfEnd IfNext.Close FalseEnd WithEnd IfMyName = DirLoopApplication.ScreenUpdating = TrueEnd Sub

最新文章