EXCEL中SUMIF公式的计算结果有问题

根据下图,用SUMIF计算公式计算的结果与实际应该得到的结果有偏差,这是什么原因,怎么解决,或是有没有什么别的公式来得到预期的结果的。

因为你的表格里面的*的SUMIF函数中被当作通配符来识别了
如果需要得出你的结果,可以改公式
E17输入
=SUM(IF($B$8:$B:$14=E8,$C$8:$C$14))
同时按CTRL+SHIFT+ENTER结束录入

或者将你的目标名里面的*替换为X
CTRL+H替换,上面输入
~*
下面输入
X
全部替换

另外你的C19的应得应该为1追问

C19和C20中的两个数是写倒了,按你那样,用CTRL+SHIFT+ENTER可以实现,不知道是什么意思,看了下是在公式中加了个{},能说一下吗?
另外我用
=SUMPRODUCT(($B$8:$B$14=B17)*($C$8:$C$14))
也实现了。

追答

同时按三键输入的是数组公式
这里的意思是,逐个数和B17对比,相等的就返回它C列对应的值
如果不同时按的话,只会对第一个值进度比对
数组数组,就是一组数同时参与,但是由于IF函数不能对一组数直接进行处理,所有需要转化为数组公式

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-10-17
这是因为*是通配符的关系
在C17中输入或复制粘贴此公式
=SUMIF(B$8:B$14,REPLACE(B17,4,,"~"),C$8:C$14)

=SUMIF(B$8:B$14,REPLACE(B17,FIND("*",B17),,"~"),C$8:C$14)
下拉填充
第2个回答  2013-10-17
作为判断条件的E8、E9、E10、E11单元格的数据有问题。追问

这个我忘了改了 应该是前面目标名中的单元格地址哈

第3个回答  2013-10-17
d3的公式应该为:
=sumif(b$8:b$14,b17,c$8:c$14)
然后下拉填充。追问

E列中的展示公式我忘了改了,但是D列中数据中的公式是正确的,结果如图中所示,不是想要的结果

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网