Excel基础学习园地公众号“Excel基础学习园地”是一个免费发布Excel基础知识、函数应用、操作技巧、学习方法等资讯的公众号,请点击上方“Excel基础学习园地”添加关注,方便我们每天向您推送精彩资讯。
在我们使用函数的过程中,往往会因为一些基础知识的缺失而带来一些困惑,比如在公式里经常会遇到的逗号和星号,搞不清楚原理的话就会出现公式看上去对的,但是结果错误的情况,所以今天就和大家说说这方面的问题。
问题起源
逗号和星号的区别还是挺明显的,但是用到函数里的时候,有时候又确实让人难以理解,比如下面这个例子,用星号和逗号的结果都正确:

将逗号改成星号:

两个公式都没错,那是不是说明用逗号和用星号一样?
如果逗号和星号的作用不一样,又有什么区别呢,什么时候用逗号,什么时候用星号?
相信这是很多刚开始使用SUMPRODUCT函数的朋友都存在的疑问,今天就给大家把这个疑惑说明白……
公式和函数
首先要来复习两个概念:公式和函数。
1、公式是Excel中以等号开头的可以得到一个结果的等式,公式以等号(=)开头,公式中可以包括函数、运算符、引用和常量。
注意这句话里的一个信息,函数是构成公式的一部分,但是公式里未必一定有函数。
2、Excel中存在大量预设的函数,每个函数在使用不同的参数后都可以得到各种结果;函数的结构:函数名,一对括号,参数,逗号。
3、每个函数的参数数量不尽相同,但是两个参数之间需要用逗号分开,如果仅有一个参数就不需要逗号了,也有的函数是不需要参数的。
4、函数的参数也有很多种情况,常量、引用、函数、数组等等都可以作为函数来使用,对于公式和函数的更多介绍,可以参阅下面这篇文章:
公式函数入门基础知识1:公式和函数
今天我们要关注的要点是函数结构中的一个重要构成部分:逗号!
以SUMPRODUCT函数来举例,这个函数真的非常简单,就是得到两列数据的乘积之和,我们用一个简单的例子来说明函数的基本功能:

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

在这个公式里使用了两个参数,分别是单价区域(B2:B7)和数量区域(C2:C7),函数的作用就是将第一参数(单价)与第二参数(数量)中的数据对应相乘后再求和。
就这个例子来说还有一种写法,公式是这样的:=SUMPRODUCT(B2:B7*C2:C7)

可以看到其计算结果与=SUMPRODUCT(B2:B7,C2:C7)是一致的。在后面这个公式里,没有逗号,因此函数只有一个参数,那么这两种写法具体的区别是什么呢?继续往下看……
逗号和星号的区别
虽然只是将第一个公式里的逗号变成了乘号(*),但是公式的意义发生了变化。第一个公式(SUMPRODUCT(B2:B7,C2:C7))有两个参数,而第二个公式(B2:B7*C2:C7)是一个参数。(判断有几个参数要看是不是有逗号去分隔开。)第一个公式中,两个区域相乘这一步是由函数来完成的,函数做了两件事,先让两个区域的数据对应相乘,再把乘积相加。在第二个公式中,两个区域相乘是由数组计算来完成的,函数只做了一件事,就是把乘积值相加。
意义的变化有何影响呢?
我们还是通过例子来看:

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

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

可以看到第一个(单价*数量)运算结果就是错误值。接下来SUMPRODUCT对包含了错误值的数据进行求和,结果肯定就是错误了。
实际上,除了这种错误之外,还有一些错误也是初学者经常会遇到的,来看看都是哪些错误吧。
大多数错误的原因
很多朋友在使用这个函数的时候,经常会得到错误值,大多数是因为区域大小选择不一致,例如下面这种情况,第一个参数有7个单元格而第二个参数只有6个单元格:

使用SUMPRODUCT函数必须要确保每个参数的区域大小相同,但很多朋友没有注意到这一点。
总结一下,常见错误基本有这些原因:
每个区域的范围不一致;如果范围一致还有错误的话,就要检查参与计算的单元格内是否有异类数据存在,这一方面靠经验,另一方面也可以借助F9功能键或者公式求值来找到问题所在,具体方法可以参考下面这2篇文章:
学会这招再也不怕看不懂嵌套函数了
为什么我的公式会出现错误?
通过以上介绍,各位对于逗号和星号的区别应该是可以理解了,遇到一些错误也可以自己找找原因。
扫码加Excel交流群
交流心得 解决问题
验证信息:Excel


3646

被折叠的 条评论
为什么被折叠?



