打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Excel100万行 多列独立汇总,按照自定义汇总方式,只需要3秒钟

Sub 按钮2_Click()

Dim OutData(), TestRows As Long, i As Long

Dim OutArea As String, t0

t0 = Timer

ActiveSheet.UsedRange.Offset(99, 0).ClearContents

TestRows = [i1].Value

If TestRows <= 0="" then="" testrows="">

If TestRows > Row_Limit Then TestRows = Row_Limit

[i1].Value = TestRows

OutArea = ''B100:C'' & TestRows

ReDim OutData(1 To TestRows - 99, 1 To 2)

OutData(1, 1) = Int((2000 * Rnd) + 1)

OutData(1, 2) = [C99]

If Rnd > 0.33 Then OutData(1, 2) = OutData(1, 2) + 1

For i = 2 To TestRows - 99

OutData(i, 1) = Int((2000 * Rnd) + 1)

If Rnd > 0.33 Then OutData(i, 2) = OutData(i - 1, 2) + 1 Else OutData(i, 2) = OutData(i - 1, 2)

Next i

Range(OutArea).Formula = OutData

[i2].Value = Timer - t0

End Sub


用户可以直接把数据粘贴进去,然后选择汇总方式,注意是每一列都可以选择单独的汇总方式

要处理多于四列的数据汇总,也只需要把现有的四列向右复制一下即可。

汇总需要至少两列

第一列C列,是要汇总的关键字,粘贴到 进行汇总的关键字 下面

第二列D列,关键字对应的需要汇总的数值,粘贴到绿色单元格开头的那一列,点击绿色单元格,选择计数,求和等等汇总方式的一个

第三列E列,点击计算按钮,就会产生汇总后的结果。

F,H,J等等绿色单元格开头的列,都可以粘贴其它汇总数值,对应的关键字还是C列,F,H,J列可以单独选择其它汇总方式

汇总结果需要人手去掉重复值,这在Excel2007版本就是很简单地选择数据菜单--删除重复值就可以了。

以附件的测试数据为例

存在汇总数据

C列

厦门5980 30694 2 92183 8671391530 36074.0006 57122.17689 20 1130

厦门5980 82729 2 13179 8671391530 57122.17689 57122.17689 1130 1130

关键字 就是厦门5980

D列的计数汇总就是求所有厦门5980的对应数据,即是 30694和82729,汇总结果为2

E列就是汇总结果2,结果是每一条 厦门5980 的数据行汇总结果的单元格都会得到2这个结果

F列是求平方和汇总,92183和13179

G列就是 92183^2 + 13179^2

H列是求最大值,对应数值是36074.0006和57122.17689

I列就是最大值 57122.17689

J列是求最后出现的数值 20 和 1130

K列就是 1130了

有经验的VBA用户可以很轻松开发出自己的 自定义汇总方式,增加一个汇总项目和一个子过程即可。

跟数据透视表相比

数据透视表: 由于是Excel自带功能,用起来肯定更安全方便,而且很容易找到支持,由于是编译好的代码,而且可以用多核CPU,速度也更快。

这个附件:你可以学习一点新的数据处理方法,而且几乎可以自定义无限多种汇总方式,数据透视表没有的,你自己加上去就好了。

建议: 尽可能使用数据透视表,极度无聊的时候用这个玩玩吧。

附件的设计思路和算法:

1. VBA字典处理数十万个关键字的速度欠佳,所以附件使用了十个字典,每个最多存储10万关键字,并且放进(1 to 10)的数组方便存取

2. 附件利用这十个VBA字典,把关键字全部翻译为long类型的序列号,直接存入等于序列号的数组下标,这样在查询的时候就可以直接访问数组,而不再需要访问慢速的VBA字典

3. 通过模块化的编程方法,很轻松就可以增加自定义汇总方式,想怎么汇总都可以了。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Excel中快速输入固定有规律的数据(图)
Excel
Excel 163种使用技巧(91-100)
EXCEL关键字提取
Excel如何隐藏单元格中的内容
你不知道Excel自定义单元格格式有多好用!
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服