excel公式SUMPRODUCT

如图,D列中有两个公式,为什么第一个返回的是错误值,第二个可以计算出数来,两个公式是如果进行计算的?把B1单元格的“b”改成一个数值就可以出值,第二个公式为什么不改就可以... 如图,D列中有两个公式,为什么第一个返回的是错误值,第二个可以计算出数来,两个公式是如果进行计算的?
把B1单元格的“b”改成一个数值就可以出值,第二个公式为什么不改就可以出值?
展开
 我来答
s今生缘
高粉答主

2015-11-10 · 醉心答题,欢迎关注
知道大有可为答主
回答量:3.2万
采纳率:85%
帮助的人:4932万
展开全部

SUMPRODUCT是乘积和函数:

  1. 第一个公式中,总共只有一个数组参数,(A:A="a1")*B:B,是各自相乘后,积作为一个数组,而B1的值是“b”,是文本,文本是不可直接相乘的,所以会出现错误值;

  2. 第二个公式中,有两个数组参数,--(A:A="a1")和B:B,SUMPRODUCT 函数将非数值型的数组元素作为 0 处理,所以B1的值是“b”,作0处理,注意的是A:A="a1"是逻辑值,如果不加--号转为数值,也是作0处理的;

  3. 因此,用“,”分隔的是多数组参数,非数值作0处理,而直接用“*”连起来的是将各乘积结果作为一个数组参数看待,遇文本即出错,因为有了运算符号,所以逻辑值会自动作为数值1或0参与运算,无须另加--号,当然加了也无妨。

凌文元LWY
高粉答主

2015-11-10 · 每个回答都超有意思的
知道大有可为答主
回答量:3.6万
采纳率:76%
帮助的人:1.3亿
展开全部
SUMPRODUCT中的(A:A="a1")返回的是逻辑结果FALSE和TRUE,如果B列为数值,就可以直接求和,而当前B列数据为文本数据,因此需要在(A:A="a1")前面加上--,目的是将(A:A="a")的逻辑结果FALSE和TRUE转换为1和0,然后与后面的文本数据对应求和,才能得到结果,也可以(A:A="a1")*1的方式进行转换。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式