Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 1715|回复: 6

[已解决]关于sumproduct()

[复制链接]
发表于 2010-3-21 10:56 | 显示全部楼层 |阅读模式

在sumproduct()中,参数为数组或区域引用,此函数为把参数相乘并想加,但我看到有的是把参数相乘表示的,不用是逗号隔开的,并且用逗号隔开后,结果不一样,为什么.请高手解答我的疑惑.谢谢

最佳答案
2010-3-21 11:26

如果中间用逗号,那么两边分别代表两个参数,而函数 SUMPRODUCT 将非数值型的数组元素作为 0 处理。而如果中间用的是乘号那么整个就作为一个参数,也就是先进行数组相称在sumproduct求和,这里的sumproduct基本等同于sum。

举例说明:

11
21
3TRUE

如上表

=SUMPRODUCT(A1:A3,B1:B3)结果就是3

=SUMPRODUCT(A1:A3*B1:B3)结果就是6

发表于 2010-3-21 11:19 | 显示全部楼层
回复

使用道具 举报

发表于 2010-3-21 11:26 | 显示全部楼层    本楼为最佳答案   

如果中间用逗号,那么两边分别代表两个参数,而函数 SUMPRODUCT 将非数值型的数组元素作为 0 处理。而如果中间用的是乘号那么整个就作为一个参数,也就是先进行数组相称在sumproduct求和,这里的sumproduct基本等同于sum。

举例说明:

11
21
3TRUE

如上表

=SUMPRODUCT(A1:A3,B1:B3)结果就是3

=SUMPRODUCT(A1:A3*B1:B3)结果就是6

回复

使用道具 举报

发表于 2010-3-21 11:29 | 显示全部楼层

学习sumproduct函数
回复

使用道具 举报

发表于 2010-3-21 11:32 | 显示全部楼层

关键在于是否有非数值

例1:

如=SUMPRODUCT({TRUE;TRUE;TRUE;TRUE;TRUE},{1;1;1;1;1})

结果为0,因为该函数规定:函数 SUMPRODUCT 将非数值型的数组元素作为 0 处理。这里所说的数组元素是

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

里单独的

arrayN,所以这里的TRUE全当为0了,对应相乘后结果为0.

例2:

=SUMPRODUCT({TRUE;TRUE;TRUE;TRUE;TRUE}*{1;1;1;1;1})

这里虽然有非数值TRUE,但它不是arrayN,这里的arrayN是{TRUE;TRUE;TRUE;TRUE;TRUE}*{1;1;1;1;1},这两个部分对应的乘积,即结果为{1;1;1;1;1},

所以最后结果为5.

说了这么多,不知道楼主是否明白~~~

回复

使用道具 举报

发表于 2010-3-21 11:35 | 显示全部楼层

QUOTE:
以下是引用knifefox在2010-3-21 11:26:00的发言:

如果中间用逗号,那么两边分别代表两个参数,而函数 SUMPRODUCT 将非数值型的数组元素作为 0 处理。而如果中间用的是乘号那么整个就作为一个参数,也就是先进行数组相称在sumproduct求和,这里的sumproduct基本等同于sum。

举例说明:

11
21
3TRUE

如上表

=SUMPRODUCT(A1:A3,B1:B3)结果就是3

=SUMPRODUCT(A1:A3*B1:B3)结果就是6

刀狐老师好久不见,学习!

[em02]
回复

使用道具 举报

 楼主| 发表于 2010-3-24 14:50 | 显示全部楼层

谢谢各位教师的回帖,现在明白了,多谢

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-4-25 17:23 , Processed in 0.265353 second(s), 7 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表