求和家族,不简单-阿里云开发者社区

开发者社区> 数据库> 正文

求和家族,不简单

简介:

说到excel函数,很多人第一时间想到的就是求和函数sum。作为excel入门级函数,sum的确是小白级的,以至于很多人对求和函数有点“误解”,觉得求和函数太简单了。

但是,你可能不知道,sum只是excel求和家族里的一个小成员而已,它的家人们可都是厉害着呢。

今天我们就一起来认识一下这个求和家族吧。

1.sum基础求和

sum语法规则是:

=sum(数据区域)

案例:对下表的“销售”列求和,计算出总销量

在销售总量单元格(G2)中输入公式:

​=sum ( 1* (E2:E11))

公式说明:销售列是在E列,所以公式里的数据区域是E2:E11,那为什么这里不直接用公式=sum(E2:E11)进行求和呢?而是前面多了“1*”。

因为在 “销量”列里存在文本形式的数字,当这种数据作为sum函数的参数时,会被当作为文本来运算,所以如果直接用公式=sum(E2:E11)求和,文本型数字就没有被包括在求和中,从而使得求出来的结果与真实结果并不相符。

如何把文本型数字转换为数值型数字呢?

可以用“分列”的方法,直接把文本型数字转换为数值,然后在求和。还有一种办法是像案例中的1*(E2:E11)的形式强制转换为数值格式。

2.sum跨表求和

案例:汇总各销售部的销售总量

如上图所示,我们要将销售1部、销售2部、销售3部,销售4部,销售5部的销量进行汇总,其中销售1、2、3、4、5部门的销售数据是连续排列的5个工作表,每个表的A2:B6数据区域分别存放着各销售部门1至5月份的销量数据。

在目标单元格输入公式“=sum(”,然后鼠标单击“销售1部”工作表,按住shift键再单击“销售5部”工作表,然后选取B2单元格,按enter 键结束,将得到以下公式:
=sum(销售1部:销售5部!B2)

公式说明:

(1)要对不同的表的相同区域进行求和,可以用sum进行跨表求和

(2)当跨表引用多个相邻的工作表中相同的数据区域进行汇总时,无须逐个工作表对数据区域进行引用,可以按工作表的排列顺序,使用冒号将第一个工作表和最后一个工作表表名进行连接,作为跨表引用的工作表名。

注意:sum的跨表求和,是对多张工作表上的相同单元格区域进行引用求和。所以在案例演示中,我们也可以看到,销售1-5部的销售表,其表结构是完全一致的。

3.单条件求和:sumif

=sumif(条件区域,条件,求和区域)

sumif是对条件区域进行判断,只对满足条件的数据求和。

案例:按月份统计每个月的销量

在目标单元格H2中输入下面的公式 ,然后向下填充公式,求出其它月份的总销量。

=sumif($B$2:$B$11,G2,$E$2:$E$11)

公式说明:sumif将数据区域B2:B11(月份列)中的每一个单元格都与条件值G2单元格(月份)进行比对,如果相等,就与B2:B11(月份列)中对应的“销量”列(E2:E11)的值进行求和。也就是按月份来求和。

4.多条件求和:sumifs

sumifs函数,多条件求和,语法规则为:

=sumifs(求和区域,条件1区域,条件1,条件2区域,条件2…条件N区域,条件N)

案例:按月份统计某产品的总销量。例如1月份A产品的总销量是多少?1月份B产品的总销量是多少?

在目标单元格输入公式:

=sumifs(E2:E11,B2:B11,G2,C2:C11,H2)

公式说明:sumifs函数与sumif函数的参数位置是有区别的:

除了参数顺序不一致之外,sumifs实现原理其实与sumif函数完全相同,只不过,是在后面多添加了统计条件而已。

对于案例演示中的公式,如上,sumifs函数将条件区域B2:B11(月份列)中的每一个单元格都与条件值G2(月份)单元格进行比对;将条件区域C2:C11(产品列)中的每一个单元格都与条件值H2(产品)单元格进行比对;如果都相等,则将E2:E11(销量列)中对应的销量进行求和。

5.乘积求和:sumproduct

sumproduct函数:product,在英文中是“相乘”的意思,和求和函数sum结合起来,就是相乘后再相加,统计的是对应区域的乘积之和。语法规则是:

=sumproduct(乘积区域1,乘积区域2)

乘积区域1和乘积区域2中的数字会被一一对应相乘最后将这些乘积求和,也就是乘积和。

案例:统计总销售额,也就是每一行的单价*销量,然后再求和

在目标单元格输入公式:

=sumproduct(D2:D11,E2:E11)

公式说明:单价列(D2:D11),销量列(E2:E11))。sumproduct是对D2与E2相乘,D3与E3相乘,D4与E4相乘…,然后再将它们的乘积进行相加,就是每一行的单价*销量,然后再求和得出总销售额。

6.数据库求和:dsum函数

作为求和家族中的一员,dsum函数相对于其它成员来说,存在感不强,这里了解下即可。

dsum函数,返回的是数据区域中满足指定条件的列中的数字之和。语法规则是:

=dsum (数据区域, 求和字段的列数,条件区域)

案例:统计销售员猴子、苏火火、高小明的总销量

在目标单元格输入公式
=dsum(A1:E11,5,G1:G4)

公式说明:特别注意,“数据区域”和“条件区域”,必须要包含列标题。所以案例中的公式=dsum(A1:E11,5,G1:G4)中,数据区域是(A1:E11)。

求和字段是“销量”,“销量”列在数据区域A1:E11中位于第5列,所以,第二个参数“求和字段的列数”是5。

“条件区域”也就是对哪些销售员进行销量求和,案例中是猴子、苏火火、高小明所在的数据区域,所以,条件区域是G1:G4。

6.总结

通过上面的介绍,想必小伙伴们对求和一家子也认识得差不多啦。求和除了sum函数的基础应用,还可以根据要解决的业务问题选择跨表求和、单条件求和、多条件求和、乘积求和、数据库等,你都get到了吗?

推荐:人工智能时代的必学技能

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
数据库
使用钉钉扫一扫加入圈子
+ 订阅

分享数据库前沿,解构实战干货,推动数据库技术变革

其他文章