1. 城镇大全网
  2. 综合百科

excel怎么累加每日数据(Excel中多表数据自动累加汇总)

作者:空纸飞机

链接:https://www.jianshu.com/p/9e1686f378a8

让不懂编程的人了解VBA,让大家轻松处理批量数据。

各类办公室文员在处理数据时,可能经常会遇到以下问题:

上级组织做了一个表格,分发给下属单位,让他们填好上交。

总部制作的分销样表

收集完之后,需要将提交的表单中的数据进行累加,填入汇总表中。如果要填的数据很多,下属单位数量不小,工作量就会特别大,特别容易出错。

回收分行填写的数据表。

分公司填写的样本数据

但是如果我们用VBA写一个宏代码,我们可以很容易地解决这个问题。当然,这里不允许你自己写。我已经写好了。你只需要复制并使用它。另外,我已经把备注写得很清楚了。

求解步骤:

1。创建一个新文件夹,并将空表保存为启用宏的Excel文件。

选择启用宏的工作簿作为文件类型。

2。在文件夹中新建一个文件夹,命名为“Data”,将所有恢复的数据文件存储在其中。

将恢复的数据存储在数据文件夹中,文件与汇总表并列。

3。打开汇总表Excel文件,单击菜单中的-命令,在打开的对话框中输入宏名“hz”并确认。

打开宏对话框

4。在菜单中单击,在打开的对话框中选择宏名,然后单击按钮。

5。删除打开窗口中的所有原始内容,并将下面的内容粘贴到编辑框中。

5。点击该窗口中的按钮,完成所有分行数据的自动汇总,并将汇总数据填入汇总表中的相应区域。

汇总结果

注意:

1。如果汇总后想再次修改宏代码,可以通过菜单中的-命令浏览宏代码。

2。根据备注,可以根据实际表格中数据区的位置和行数、列数修改相关参数。

其中:

数组brr(1到3,1到4)表示数据区的行数和列数,即有3行4列的数据需要汇总;

单元格区域[B3:E5]表示要汇总的数据位于该区域[B3:E5];

对于i = 1到3对于j = 1到4的循环意味着从要汇总的区域的第一行到第三行和第一列到第四列的累加。

3。整个代码如下:(复制过去,稍加修改即可使用)

Sub hz()

Dim Fso,Fld,Fl

Dim arr,brr(1到3,1到4),i%,j%

'定义变量和数组(数组大小由要汇总的数据区域中的行数和列数决定)

Set Fso = CreateObject(" Scripting。文件系统对象”)

Set Fld = FSO . get folder(this workbook。路径与路径。" Data ")'读取要汇总的数据所在的文件夹。

如果Fld。Files . Count & gt那么0

应用。ScreenUpdating = False

用于Fld中的每个Fl。文件

工作簿。打开(左前)

arr = activeworkbook。工作表(1)。[B3: E5]'将每个表格数据区域中需要汇总的值分配给数组arr。

For i = 1到3 '逐行

对于j = 1到4 '逐列

If IsNumeric(arr(i,j))那么brr(i,j) = brr(i,j) arr(i,j)

'累加如果单元格是数字。

下一个

下一个

ActiveWorkbook。关闭

下一个

应用。ScreenUpdating = True

thisworkbook.worksheets (1)。[B3: E5] = brr '将汇总数据写入汇总表的相应区域。

MsgBox "数据摘要已完成"

其他

MsgBox "找不到工作簿文件"

结束If

结束Sub

希望这个例子可以帮助你减轻重复计算的痛苦。

,

猜你喜欢:综合百科

综合百科excel怎么累加每日数据(Excel中多表数据自动累加汇总)

转载请注明:原文链接 | http://www.nnxc.com.cn/10043347882.html