5种条件汇总方法,到底哪种才是最好的方法?

函数厉害的,说使用函数才是最好的数据汇总方式~而那些懂VBA的又觉得函数真不入流,这就好比“PHP是世界上最好的语言”一样,争论不止……
小编还是带着问题,一起来聊聊这个话题
问题:按照名称汇总销售金额
非常简单!那么你会使用什么函数来处理这个问题呢?
我想不同的人有不同的选择,但是总要有一个选择,而小编今天要讲的就是
什么情况下,选择什么方法是比较优的选择!同时也是一题多解和Excel各项功能场景下选择的优劣比较!
首先,我们要说的方式,我想应该是很多人的第一选择,那就是数据透视表!
直接来看动画演示!
数据透视表汇总-动画演示
具体操作我们不在啰嗦,直接看动画演示。
我们来说说透视表这种方式,什么情况下选择使用和优劣!
方法说明:透视表的方法最大的特点就是简单、易用,但是缺点也很明显,自己使用很方便,但是数据更新没有办法自动刷新,对于分享给第三方或者做成模板,不太适合。
优点:简单、方便、高效
缺点:无法及时更新
推荐场景:临时汇总数据,推荐新手使用,简单高效!
除了透视表,我想很多人想到的就是函数法了!
● ● ●
函数方法汇总-动画演示!
公式:=SUMIF(Sheet2!B:B,Sheet4!A2,Sheet2!E:E)
没有使用过SUMIF(S)的同学,先学习一下基础:SUMIFS用法大全
方法说明:函数公式的核心就是自动更新,当我们明细数据增、删、改的时候会及时更新。所以这种方式适合我们做成模板或者经常需要更新数据的情况下使用。
优点:跟随数据源同步更新结果、自动化
缺点:数据量大或者逻辑复杂卡顿,不合适大量数据
推荐场景:一般数据汇总、模板、需要经常更新明细数据的情况
● ● ●
第三种要说的应该也算是主流的方法,那就是很多新手不爱,入门觉得异常强大的VBA!
适用VBA进行条件汇总-动画演示
'作者:Excel办公实战-小易'日期:2020年9月2日'功能:条件汇总'-----------------------------------------Sub 条件汇总() Dim arr, d As Object, i As Long Set d = CreateObject("scripting.dictionary") arr = Sheets("Data").Range("A1").CurrentRegion '按名称汇总 For i = 2 To UBound(arr) d(arr(i, 2)) = d(arr(i, 2)) + arr(i, 5) Next '清空历史数据,写入汇总结果 With Sheets("VBA") .UsedRange.Clear .[A1:B1] = [{"名称","金额合计"}] .Range("A2").Resize(d.Count, 2) = _ Application.Transpose(Array(d.keys(), d.items())) End WithEnd Sub
(0)

相关推荐