场景案例
在知乎上看到一个Excel统计问题:
如何用公式统计下图中不同地区,1月到6月的总数?
![你知道](http://p2.ttnews.xyz/loading.gif)
用公式函数当然能解决这个问题,但是会很复杂。SUMPRODUCT, OFFSET,SUMIFS各种解法都被不同网友写出来。
我在这个问题下给出的解答方法如下,
![你知道](http://p2.ttnews.xyz/loading.gif)
这个函数看上去不复杂,就只是用了一个SUM函数。按理说到这里这个问题就结束了。
可是你认真看看,你真的能理解这个公式了吗?
这个函数涉及数组的用法。用A2:A9区域单元格和A12的地区比对,返回一个包含逻辑值的数组{True; False…},然后将这组逻辑值和数据区域B2:B9相乘进行数组运算,最后将所有运算结果求和。
关于数组的用法,在这里我不做多解释。有兴趣的小伙伴可以点击下方我之前写的一篇文章了解一下数组运算原理。
数组是一个Excel函数里的一个难点,比较抽象,对于很多人来讲,理解起来是比较困难的。
规范的源数据事半功倍
但是我们真的一定要用公式函数来解决这个问题吗?
如果我们在源数据做得更加规范的话是否有更简洁的方法呢?
在上面的案例中,我们看到的源数据是一个二维数据。所谓二维数据,简单点说,就是每一个数值,通过纵向标题和横向标题可以确定这个数值的含义。
在这种情况下,要进行统计的话,我们不得不用复杂的公式函数来解决。
但是如果我们在录入数据的时候用一维数据的结构,那么我们就可以通过"数据透视表"来轻易地来进行统计了。
为了将二维数据转换成一维数据,微软的工程师也是煞费苦心,提供了"逆透视"的工具。
利用数据透视表对一维数据进行数据统计,就是几秒钟的事情。中间不需要写任何公式函数。
相比之下,数据透视表是不是显得简单得多了。
二维数据转换为一维数据
什么?你不知道怎么将二维数据转换为一维数据?如果你使用的是Excel2016版本或以上,那么Excel里已经带而来一个工具PowerQuery,通过这个工具可以很简单地转换数据结构。
结语
通过这个案例可以看到,不同的数据源结构对于后续的统计分析影响非常大。
实际工作场景中,很多人并不重视源数据的处理。有很多时候,一些身边的伙伴或者一些学生咨询我的Excel问题往往都是不规范的源数据导致处理得非常艰难而吃力。
如果你的数据表格是为了打印或者直接分发的话(不涉及后续统计分析),二维数据表没有问题,合并单元格也没有问题。
但是,如果你的源数据需要做进一步的分析处理的话,请用一维数据结构。这会让你的效率倍增。
关注我,一起玩Office。
閱讀更多 玩Office 的文章