转自EXCEL不加班

学员在求和的时候,结果为0,一直搞不清楚什么原因?

excel表格求和为什么总是等于0(EXCEL为什么求和老是等于0)(1)

这种问题很常见,可以分成2大类。

1.循环引用

高版本循环引用的时候,都会在状态栏左下角提示。引用B列的区域,会将B6循环引用进去,导致出错。

excel表格求和为什么总是等于0(EXCEL为什么求和老是等于0)(2)

不过有的版本没有提示,这时可以点公式→错误检查→循环引用,就可以看到循环引用的单元格。

excel表格求和为什么总是等于0(EXCEL为什么求和老是等于0)(3)

遇到这种,都是直接更改引用区域就可以。

=SUM(B2:B5)

excel表格求和为什么总是等于0(EXCEL为什么求和老是等于0)(4)

2.文本格式

有不少学员的表格都是从系统导出来,而系统的数据大多数是文本格式,这就导致求和为0。

excel表格求和为什么总是等于0(EXCEL为什么求和老是等于0)(5)

选择区域,点左上角的感叹号,转换为数字,这样就可以求和。

excel表格求和为什么总是等于0(EXCEL为什么求和老是等于0)(6)

到这里问题就解决了,突然想到另一个学员的求和问题。

同样是文本格式,但就是不想改变格式,这种又该如何解决?

excel表格求和为什么总是等于0(EXCEL为什么求和老是等于0)(7)

这里就可以借助--,也就是减负运算,将文本格式转为数字格式。这时出现一个很奇怪的现象,支出金额合计是错误值,存入金额是正常的。

=SUMPRODUCT(--B2:B12)

excel表格求和为什么总是等于0(EXCEL为什么求和老是等于0)(8)

卢子第一反应就是,存在隐藏字符或者空格,用LEN函数测试,发现都是0,没有存在任何字符,怎么回事呢?

excel表格求和为什么总是等于0(EXCEL为什么求和老是等于0)(9)

卢子又猜想可能是存在"",这种太常见了,为了美观很多人都会用""。比如让错误值显示空白。

=IFERROR(原来公式,"")

而存在""是不允许运算,一运算就是错误值。

excel表格求和为什么总是等于0(EXCEL为什么求和老是等于0)(10)

既然如此,那就用IF函数判断,让空白的显示0,有金额的转换格式。

=IF(B2="",0,--B2)

excel表格求和为什么总是等于0(EXCEL为什么求和老是等于0)(11)

绕了一大圈,终于搞定了,输入公式后,按Ctrl Shift Enter结束。

=SUM(IF(B2:B12="",0,--B2:B12))

excel表格求和为什么总是等于0(EXCEL为什么求和老是等于0)(12)

最后,这个学员又提出了一个需求,要根据交易时间进行条件求和。

其实,SUM IF函数的数组公式,是可以条件求和的,单条件或者多条件都可以,记得输入公式后,按Ctrl Shift Enter结束。

=SUM(IF(B$2:B$12="",0,($A$2:$A$12=$E2)*B$2:B$12))

excel表格求和为什么总是等于0(EXCEL为什么求和老是等于0)(13)

这样,问题就完美解决了。

陪你学Excel,一生够不够?

,