首页 专题 excel Excel函数学习之无所不能的SUMPRODUCT!

Excel函数学习之无所不能的SUMPRODUCT!

May 24, 2022 am 11:49 AM
excel

在之前的文章《Excel函数学习之神奇的AGGREGATE,竟可一个抵19个!》中,我们了解了一种强大的统计函数。而今天我们来聊聊SUMPRODUCT函数,sumproduct函数可以得到两列数据的乘积之和,但是在运用函数的过程中有非常多需要注意的地方,特别是运用上逻辑值和数组之后,下面我们一起来看看讲解!

Excel函数学习之无所不能的SUMPRODUCT!

1、SUMPRODUCT的实质

要说SUMPRODUCT函数的话,真的非常简单,就是得到两列数据的乘积之和,我们用一个简单的例子来说明函数的基本功能:

1.png

上图是一个非常简单的表格,要算出总价一般都是将单价*数量算出来再求和,结果如D8所示。如果使用了SUMPRODUCT函数的话,就可以直接利用单价和数量计算出总价,公式1为:=SUMPRODUCT(B2:B7,C2:C7),结果如D9所示。

2.png

在这个公式里,使用了两个参数,分别是单价区域(B2:B7)和数量区域(C2:C7),函数的作用就是将第一参数(单价)与第二参数(数量)中的数据对应相乘后再求和。

2、大多数错误的原因

很多朋友在使用这个函数的时候,经常会得到错误值,大多数是因为区域大小选择不一致,例如下面这种情况,第一个参数有7个单元格而第二个参数只有6个单元格:

3.png

使用SUMPRODUCT函数必须要确保每个参数的区域大小相同,但很多朋友没有注意到这一点。

3、另一种常见写法,逗号变乘号(*)

就这个例子来说,还有一种写法更为常见,公式是这样的:=SUMPRODUCT(B2:B7*C2:C7)

4.png

可以看到其计算结果与=SUMPRODUCT(B2:B7,C2:C7)是一致的。

一致的结果导致了很多朋友都百思不得其解的一个问题:二者有何差别?

4、逗号和乘号(*)的差别

虽然只是将第一个公式里的逗号变成了乘号(*),但是公式的意义发生了变化。第一个公式(SUMPRODUCT(B2:B7,C2:C7))有两个参数,而第二个公式(B2:B7*C2:C7)是一个参数。(判断有几个参数要看是不是有逗号去分隔开。)第一个公式中,两个区域相乘这一步是由函数来完成的,函数做了两件事,先让两个区域的数据对应相乘,再把乘积相加。在第二个公式中,两个区域相乘是由数组计算来完成的,函数只做了一件事,就是把乘积值相加。

意义的变化有何影响呢?

我们还是通过例子来看:

5.png

在上图这个公式中用的是逗号(,),有两个独立的参数。SUMPRODUCT函数首先让两组数据对应相乘,相乘的时候会检查数据并把非数值型数据作为0处理,然后在把乘积相加。因此,B1“单价”和C1“数量”会当成0来处理,公式可以得到正确结果。

6.png

当我们把逗号换成*号后,公式结果错误。为什么呢?SUMPRODUCT函数这时只负责把乘积相加。参数B2:B7*C2:C7是数组乘法运算,因为计算的区域中包含了文字(文字是不能进行乘法运算的),所以在这个数组的计算结果里就有错误值了。选中公式中的“B2:B7*C2:C7”按F9可以查看B2:B7*C2:C7的运算结果:

7.png

可以看到第一个(单价*数量)运算结果就是错误值。接下来SUMPRODUCT对包含了错误值的数据进行求和,结果肯定就是错误了。

5、SUMPRODUCT用乘号(*)的要点

以上内容所要表达的意思有两点:

第一,使用逗号和使用*号有时候结果相同,但是意义完全不一样,希望大家可以理解。

第二,SUMPRODUCT函数使用乘号(*)必须要注意两点:第一,不能存在无法计算的内容,如文字;第二,如果是两组或多组数组相乘的话,数据区域大小一致。用逗号则只需要保证数据区域大小一致即可。

6、其实乘号还带来了更大优势

我们把SUMPRODUCT函数逗号、乘号前后的数据用A、B来代替,表达为SUMPRODUCT(A,B)和SUMPRODUCT(A*B)。当为逗号时,A、B必须同时都是数值或者数组,不能一个是数值,一个是数组;当为乘号时,A、B可以同时都是数值或者数组,也可以一个是数值一个是数组。

也就是:

逗号,

乘号*

SUMPRODUCT(C1,B1)

SUMPRODUCT(C1*B1)

SUMPRODUCT(C1:C9,D1:D9)

SUMPRODUCT(C1:C9*D1:D9)

SUMPRODUCT(C1:D9,F1:G9)

SUMPRODUCT(C1:D9*F1:G9)

SUMPRODUCT(C1:C9,D1)

×

SUMPRODUCT(C1:C9*D1)

SUMPRODUCT(C1:D9,F1)

×

SUMPRODUCT(C1:D9*F1)

因此,用乘号扩大了SUMPRODUCT函数的应用。你即将在下面看到的都是SUMPRODUCT函数用乘号的应用。

7、看得懂这些SUMPRODUCT公式吗?

如果明白了上面的内容,说明对于这个函数的基本用法是没问题了。可是很可能很多SUMPRODUCT公式你还是看不懂,比如这种:

8.png

这实际上是一个条件计数的问题,再看这个:

9.png

这是一个多条件求和的问题,还有这个:

10.png

在这个表里,几乎各种统计问题都可以用SUMPRODUCT函数去解决,不再一一举例。仅仅是上面列出的三个公式,都能看明白的朋友可能就不多了。

为什么已经理解了SUMPRODUCT函数的用法,却还看不懂这些公式呢,更别说自己去用公式来解决问题了。原因就是你还不了解这两个知识点:逻辑值和数组。

8、了解一点逻辑值和数组

先来说说逻辑值,逻辑值只有两个,就是TRUE和FALSE。当我们在公式里进行某种比较或者判断的时候,就会产生逻辑值,以SUMPRODUCT((I2:I22="张三")*1) 为例,其中的(I2:I22="张三")就是一个判断。通常情况下,我们是以单元格去做判断,I2 ="张三"的意思就是判断I2单元格内容是否为"张三",如果是则得到TRUE,反之得到FALSE。当我们使用了一个区域去判断的时候,就会得到一组数据,这其实就是一个数组了。例如I2:I22="张三"就会得到一组逻辑值,可以用F9来看看计算结果:

11.png

如果有兴趣的话可以逐一对比销售员和结果值,会发现张三对应的都是TRUE。

因为逻辑值无法直接进行求和,必须转换为数字才行,转换的方法就是对逻辑值进行加减乘除之一的任何运算即可。在这个公式中,*1就是这个作用,可以看看效果:

12.png

通过*1运算之后,TRUE都变成了1,而FALSE都变成了0。不要问我为什么,Excel就是这么规定的,逻辑值与数字的对应关系就是这个。

好了,我们首先得到一组逻辑值,然后通过*1变成一组数字,再进行求和,就达到了按条件计数的目的。你现在是否已经理解了=SUMPRODUCT((I2:I22="张三")*1)这个公式呢?

现在我们了解到逻辑值,也明白了数组运算的第一个原则:当一组数与一个数进行计算时,是这组数中的每个数据分别与这一个数进行计算。刚才的公式中就是这样计算的。

9、不论SUMPRODUCT公式多复杂,全看懂!

咱们再来看看第二个公式:=SUMPRODUCT((MONTH(F2:F22)=3)*(H2:H22="二分店")*(G2:G22="衬衫")*J2:J22)

不要看这个公式长,利用我们刚才学到的知识来破解它的话其实很简单。公式还是只有一个参数,只不过这个参数是由四个数组构成的,其中的三组都是逻辑值,分别是(MONTH(F2:F22)=3)、(H2:H22="二分店")和(G2:G22="衬衫")。这三组逻辑值完成三个判断,分别对应了三个条件:月份=3、店面=二分店和名称=衬衫。具体内容如图所示:

13.png

看起来密密麻麻的,但是经过了乘法运算以后,就变成了一堆1和0,结果是这样的:

14.png

乘积结果只有两个1,其实就对应了三月份二分店衬衫这两条数据。此时的公式变成了一组逻辑值(已经是0和1了)与一组数据(数量)相乘,再由函数完成求和。

在这个例子中,需要注意数组计算的第二个原则:当多个(含两个)数组计算时(本例是四个数组),数组中对应位置的数据进行计算,要求数组中包含的数据个数相同。

到现在我们已经了解到数组计算的两个原则,现举个简单的例子来说明:

15.png

一个数组(A1:A9)与一个数据(B1)相乘时,是这组数分别与这个数据相乘;

16.png

两个数组(A1:A9和B1:B9)相乘时,是第一组数与第二组数对应位置的数据相乘。

现在回头来看这个公式=SUMPRODUCT((MONTH(F2:F22)=3)*(H2:H22="二分店")*(G2:G22="衬衫")*J2:J22),应该没那么头疼了吧。

其实数组的计算原则还有更加复杂的情况,有兴趣的朋友可以看看相关的资料,这里了解简单原理即可。再来看看第三个公式:=SUMPRODUCT((H2:H22=H2)*(G2:G22={"毛衣","衬衫"})*L2:L22)。这个公式看上去和前面两个有点区别,(G2:G22={"毛衣","衬衫"})这部分用到了常量数组,其实这个公式本来应该是这样写的:=SUMPRODUCT((H2:H22=H2)*(G2:G22="毛衣")*L2:L22)+SUMPRODUCT((H2:H22=H2)*(G2:G22="衬衫")*L2:L22)

17.png

这个公式用到了两个SUMPRODUCT函数,第一个是计算总店毛衣的销售额,第二个是计算总店衬衫的销售额,分别看应该每个都能理解。两个SUMPRODUCT函数除了"毛衣"和"衬衫"这里不同,其他的完全一样,遇到这种情况,就可以用常量数组把两个内容放到一起,使公式变得简洁。

通过今天的讲解,我们读懂了常见的SUMPRODUCT公式,解决了SUMPRODUCT函数运用乘号的困惑,掌握了SUMPRODUCT函数更多的应用。同时,我们也了解到逻辑值和数组的一些基础知识——这对我们理解其他的复杂公式有帮助。

相关学习推荐:excel教程

以上是Excel函数学习之无所不能的SUMPRODUCT!的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解锁Myrise中的所有内容
4 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

excel打印表格框线消失怎么办 excel打印表格框线消失怎么办 Mar 21, 2024 am 09:50 AM

如果在打开一份需要打印的文件时,在打印预览里我们会发现表格框线不知为什么消失不见了,遇到这样的情况,我们就要及时进行处理,如果你的打印文件里也出现了此类的问题,那么就和小编一起来学习下边的课程吧:excel打印表格框线消失怎么办?1、打开一份需要打印的文件,如下图所示。  2、选中所有需要的内容区域,如下图所示。  3、单击鼠标右键,选择“设置单元格格式”选项,如下图所示。  4、点击窗口上方的“边框”选项,如下图所示。  5、在左侧的线条样式中选择细实线图样,如下图所示。  6、选择“外边框”

excel同时筛选3个以上关键词怎么操作 excel同时筛选3个以上关键词怎么操作 Mar 21, 2024 pm 03:16 PM

在日常办公中经常使用Excel来处理数据,时常遇到需要使用“筛选”功能。当我们在Excel中选择执行“筛选”时,对于同一列而言,最多只能筛选两个条件,那么,你知道excel同时筛选3个以上关键词该怎么操作吗?接下来,就让小编为大家演示一遍。第一种方法是将条件逐步添加到筛选器中。如果要同时筛选出三个符合条件的明细,首先需要逐步筛选出其中一个。开始时,可以先根据条件筛选出姓“王”的员工。然后单击【确定】,接着在筛选结果中勾选【将当前所选内容添加到筛选器】。操作步骤如下所示。  同样,再次分别执行筛选

excel表格兼容模式改正常模式的方法 excel表格兼容模式改正常模式的方法 Mar 20, 2024 pm 08:01 PM

在我们日常的工作学习中,从他人处拷贝了Excel文件,打开进行内容添加或重新编辑后,再保存的有时候,有时会提示出现兼容性检查的对话框,非常的麻烦,不知道Excel软件,可不可改为正常模式呢?那么下面就由小编为大家带来解决这个问题的详细步骤,让我们一起来学习吧。最后一定记得收藏保存。1、打开一个工作表,在工作表的名称中显示多出来一个兼容模式,如图所示。2、在这个工作表中,进行了内容的修改后保存,结果总是弹出兼容检查器的对话框,很麻烦看见这个页面,如图所示。  3、点击Office按钮,点另存为,然

excel下标怎么打出来 excel下标怎么打出来 Mar 20, 2024 am 11:31 AM

e我们经常会用excel来制作一些数据表之类的,有时在输入参数数值时需要对某个数字进行上标或下标,比如数学公式就会经常用到,那么excel下标怎么打出来呢?我们一起来看看详细操作步骤:一、上标方法:1、首先Excel中输入a3(3为上标)。2、选中数字“3”,右键选择“设置单元格格式”。3、点击“上标”,然后“确定”即可。4、看,效果就是这样的。二、下标方法:1、与上标设置方法类似,在单元格中输入“ln310”(3为下标),选中数字“3”,右键选择“设置单元格格式”。2、勾选“下标”,点击“确定

excel上标应该如何设置 excel上标应该如何设置 Mar 20, 2024 pm 04:30 PM

在处理数据时,有时我们会遇到数据包含了倍数、温度等等各种符号的时候,你知道excel上标应该如何设置吗?我们在使用excel处理数据时,如果不会设置上标,这可是会让我们的很多数据在录入时就会比较麻烦。今天小编就为大家带来了excel上标的具体设置方法。1.首先,让我们打开桌面上的MicrosoftOfficeExcel文档,选择需要修改为上标的文字,具体如图所示。2.然后,点击右键,在点击后出现的菜单中,选择“设置单元格格式”选项,具体如图所示。3.接下来,在系统自动弹出来的“单元格格式”对话框

excel中iif函数的用法 excel中iif函数的用法 Mar 20, 2024 pm 06:10 PM

大部分用户使用Excel都是用来处理表格数据的,其实Excel还有vba程序编写,这个除了专人士应该没有多少用户用过此功能,在vba编写时常常会用到iif函数,它其实跟if函数的功能差不多,下面小编给大家介绍下iif函数的用法。Excel中SQL语句和VBA代码中都有iif函数。iif函数和excel工作表中的IF函数用法相似,执行真假值判断,根据逻辑计算的真假值,返回不同结果。IF函数用法是(条件,是,否)。VBA中的IF语句和IIF函数,前者IF语句是控制语句可以根据条件执行不同的语句,后者

excel阅读模式在哪里设置 excel阅读模式在哪里设置 Mar 21, 2024 am 08:40 AM

在软件的学习中,我们习惯用excel,不仅仅是因为需要方便,更因为它可以满足多种实际工作中需要的格式,而且excel运用起来非常的灵活,有种模式是方便阅读的,今天带给大家的就是:excel阅读模式在哪里设置。1、打开电脑,然后再打开Excel应用,找到目标数据。2、要想在Excel中,设置阅读模式,有两种方式。第一种:Excel中,有大量的便捷处理方式,分布在Excel中布局中。在Excel的右下角,有设置阅读模式的快捷方式,找到十字标志的图案,点击即可进入阅读模式,在十字标志的右边有一个小的三

PPT幻灯片插入excel图标的操作方法 PPT幻灯片插入excel图标的操作方法 Mar 26, 2024 pm 05:40 PM

1、打开PPT,翻页至需要插入excel图标的页面。点击插入选项卡。2、点击【对象】。3、跳出以下对话框。4、点击【由文件创建】,点击【浏览】。5、选择需要插入的excel表格。6、点击确定后跳出如下页面。7、勾选【显示为图标】。8、点击确定即可。

See all articles