查看原文
其他

因为这个Excel函数,我扔掉了所有计算器

Catherine 一周进步 2019-07-31

点击上面△蓝字,关注置顶后回复关键词【一周】

可以领取今日份小礼物哦


大家好,我是Catherine。
 

今天我们来说一说大家平时在excel中经常会用到的求和函数,主要是sumif、sumifs以及sumproduct这三个函数之间的联系与区别,以及这三个函数在多条件求和中的运用。

 


(若不想看图文,文末有视频讲解哦~)


【1】函数语法


 

sumif函数用于单条件求和,这个大家肯定都知道啦。它的语法是:

=sumif(range,criteria,[sum_range])

包括3个参数,分别是搜索条件值区域(range)、搜索条件值(criteria)、求和数据区域(sum_range)

 

sumifs函数用于多条件求和,它的语法是:

=sumifs(sum_range,criteria_range1, criteria1,[ criteria_range2, criteria2],…)

与sumif不同,它的第一个参数就是求和数据区域(sum_range),然后可以在后面写上很多个搜索条件值区域(criteria_range)与条件(criteria)

 

sumproduct是一个数组函数,用于在给定的几组数组中,然后把数组间对应的元素相乘,最后返回乘积之和。

 

Em…看起来很复杂的样子…
没关系,我们在这一篇里只讨论用sumproduct函数实现多条件求和的功能。

 

sumproduct函数的语法是:

=SUMPRODUCT(array1,array2,array3, ...)

其中Array就代表数组。

 


【2】应用场景


接下来我们用这三个函数解决同一个问题,感受一下它们的联系和区别在哪里。

 

现在我们有这样一份表格:




求:张三的销售总额

这个问题只有一个条件,因此用这三个函数中任意一个都可以解决。

 

sumif:=SUMIF(A2:A13,"张三",C2:C13)

 

sumifs:=SUMIFS(C2:C13,A2:A13,"张三")

 

sumproduct:=SUMPRODUCT( (A2:A13="张三")*(C2:C13))

 

看到sumproduct的这个公式,大家可能有疑惑,它跟语法格式好像不一样诶。
其实呢,我们可以把它看做是只有一个参数。

 

因为当函数中出现由TRUE和FALSE组成的逻辑数组时,如果要与语法格式保持一致,公式要写成这种样子:

=sumproduct((A2:A13="张三")*1,(C2:C13))


这里我们要乘以1,把逻辑判断的结果转化成数组才能参与运算。


上面的这个公式可以分解成以下形式:

=sumproduct({数组1}*{数组2})

=sumproduct({TRUE;…..TRUE;…..TRUE}*{120;…211;…201})

 

如果我们不乘以1的话,就要写成最上面的那种形式,看作只有一个参数。

 

求:张三1月份的销售总额

这个问题有两个条件,所以sumif就不适用啦。

 

sumifs:=SUMIFS(C2:C13,A2:A13,"张三",B2:B13,1)

 

sumproduct:=SUMPRODUCT((A2:A13="张三")*(B2:B13=1)*(C2:C13))


当然,这里sumproduct也可以写成

=SUMPRODUCT((A2:A13="张三")*1,(B2:B13=1)*1,C2:C13)

也就是将逻辑判断结果乘以1转化为数组,再参与运算。

 

求:张三1月份和3月份的销售总额

  • 这个题目可以理解成三个步骤:
    首先找出A列姓名为A的,其次B列月份为1的,这些数值求和;

  • 接着还是要找A列姓名为A的,但B列要找月份为3的,再把这些值求和;

  • 最后把两次求和的结果再求和。



实际上是操作了两次问题②的步骤,再操作一次求和。

 

sumif是不支持这个问题的。

 

而sumifs本身只能求一组多条件的运算,所以在得到运算结果后还需要用SUM把结果相加。

 

sumifs:=SUM(SUMIFS(C2:C13,A2:A13,"张三",B2:B13,{1,3}))


那么如果用sumproduct函数来解决呢?

 

sumproduct:=SUMPRODUCT((A2:A13="张三")*(B2:B13={1,3})*(C2:C13))


我们可以看出,使用sumproduct来解决这个问题更加简洁,不需要再嵌套使用sum函数。

 

通过3个问题的解答,我们可以看出

  • sumif只能用于单条件的求和

  • sumifs和sumproduct都可以用于多条件求和

  • 但是当一列中有多个条件时,使用sumproduct会更加简洁。


以上,全文完


https://v.qq.com/txp/iframe/player.html?vid=a0562nxdeju&width=500&height=375&auto=0


你在工作学习中还遇到过哪些同一个问题有多种解法,但是又各不相同的呢?

快留言告诉我们吧~



更多阅读

脑洞大开,盘点Excel中Shift键的奇妙玩法(推荐)

大学期间只学会了一样东西,却有底气拒绝年薪50W的工作 | 珞珈

轰炸地球 | 每天1小时,30天如何成为1/10000的PPT大神?



    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存