【Excel公式教程】都2021年了,你怎么还不会按月求和?
公众号回复2016 下载office2016
对于使用Excel处理数据的伙伴们来说,各种统计汇总工作是日常必须面对的问题,关于汇总的函数,我们也学习了不少,求和用SUM,单条件求和用SUMIF,多条件求和用SUMIFS,当然还有万能的SUMPRODUCT函数。
事实上当你可以熟练运用以上几个函数的时候,一般问题都难不倒了,不过遇到一些不一般的问题还是会让你挠头的,比如按月汇总这类问题,今天就来详细聊聊这类问题的应对方法。
先看一个模拟的数据源:
这个数据源有两个特点:
1、销售日期都在同一年;
2、统计区域的月份是通过格式设置的,实际上是个日期:
这两个特点具有三层意义:
1、遇到一个问题,首先要观察数据源的特点,根据具体情况选择解决方法;
2、就按月统计这个例子来说,如果数据源都在一年,问题就简单得多,如果数据源是跨年的,就需要根据年份和月份来进行统计,问题就变得复杂了;
3、统计区域的内容也是一个必须考虑的因素,就按月统计这类问题来说,一般的月份有直接用数字表示的:
也有带数字+汉字表示的:
本例是一种比较少见的形式,直接用日期来定义格式表示月份。
这关系到我们统计时候的条件该如何确定(按月求和实际上是条件求和的一种特殊情况)。
热身环节结束,接下来进入正题,看看本例这种情况都有哪些方法来应对。
公式为:
← 左右滑动查看完整公式 →
简单解释一下原理,使用month函数获得条件区域(A2:A22)的日期所对应的月份,与条件单元格(F2)的月份进行比较,再对数据区域(B2:B22)中符合条件的值进行求和。
关于SUMPRODUCT的用法想了解的可以留言,改天单聊。
使用这个函数的时候,一定记得要准确选择相应的区域,并且区域中的内容都是可进行计算的内容,例如日期,只能从第二行开始,如果区域里有不是日期的数据,就会出错。
可能有朋友会问,这是一个单条件的问题,为什么会用SUMIFS来统计呢?
还有人可能会想到这个公式:
=SUMIF(MONTH($A$2:$A$22),MONTH(F2),$B$2:$B$22)
这里就有一个细节了,SUMIF函数只能支持区域引用,不能支持数组(对一个区域使用函数得到的就是一个数组)。
这算是SUMIF函数的一个小小的不足吧,不过也正是因为这个限制,SUMIF和SUMIFS在计算速度上要比SUMPRODUCT快很多(数据量小的时候不明显)。
那么这个问题如何使用SUMIFS来解决呢?
公式可以这样写:
← 左右滑动查看完整公式 →
因为F2就是一个日期(本文开头啰嗦了半天就是为这里铺垫),这个条件就是大于等于当月第一天的日期;
第二个条件:"<= "&EOMONTH(F2,0),使用EOMONTH(F2,0)得到当月最后一天,这个条件就是小于等于当月的最后一天。
使用这两个条件,就把条件区域锁定在当月的日期。
与方法一相比较,方法二稍微长了一点,不过限制也少了,如果数据量大的话速度也会快一点。
这里留了一个悬念,希望有兴趣的朋友可以自己琢磨一下:如果条件区域不是本例的格式,而是直接用数字或者是数字+汉字的格式,方法二该如何修改呢?
这里仅展示结果,就是利用了透视表进行分组,操作方法可以参考视频来学习(视频是按季度分组汇总,本例是按月分组汇总,方法一样):
PS:需要本套小视频(50集50个实用技巧)可以参加打卡活动,20分即可获得!
使用透视表统计是非常快的,唯一的不足就是结果的格式可能会与目标有一点差异(例如本例中没有发生销售的月份就没有体现出来),不过这对一些函数运用不是很熟练的朋友来说,也是不错的一种解决方法。
通过今天这个例子,重点想说明两个观点:
1、遇到问题一定要多分析,找特点(规律);
2、解决问题不一定要限制方法,自己最拿手的方法就是最好的方法!
强烈推荐菜鸟系统学习Excel函数的宝典,也就是下面这本,非常适合新手学习。
出版社的主编说“第一次看到这本书的时候感觉非常好,这么多年能把函数用这种风格的语言讲出来的,几乎没有”。
不夸张地说,看了肯定能受益,毕竟书里的内容,都是我自己踩过的坑。