总和显示 0,但整列都是数字(文本型数字)

中等 数学
题目说明
提示 0/4
官方解法 2
–
测试用例
1
2
3
重置
提交
fx
A
B
C
D
E
F
G
1
2
3
4
5
6
7
8
9
10
正在加载交互式电子表格...
正在准备单元格数据与公式求解引擎
○ 就绪 请在高亮的目标单元格输入公式,然后点「提交」。

题目

题目说明

月报上这列五张发票的合计显示 0(B2:B6)。金额是从系统导出的,被存成文本,所以 SUM 认为没有东西可加。把真正的总额填进 Correct total 单元格 E2。

必须在公式里把文本转成数字——你无法重新输入这一列。

题目数据

用表格查看整份数据(可选中、可复制)
这道题的数据表
ABDE
1InvoiceAmountReport (wrong)0
2INV-9011200Correct total
3INV-902800
4INV-903950
5INV-904600
6INV-905400

知识点

SUM 会忽略文本,而导入时把数字包成文本,就等于让整列对 SUM 失效。SUMPRODUCT(--区域) 会把每个值强制转成数字(-- 是两个负号),SUM(VALUE(区域)) 则是显式转换。快速判断法:文本型数字靠左对齐,真正的数字靠右。

解题思路

答案写在 E2。提交时我们会换 3 组输入重跑你的公式,写死数字一定过不了 —— 公式必须跟着单元格走。

  1. 目标单元格是 E2
  2. SUM 得到 0 是因为那些是文本、不是数字
  3. 要先把区域转成数字
  4. 公式形状:=SUMPRODUCT(--?) 或 =SUM(VALUE(?))

官方解法

展开 2 种解法(建议先自己试一次)

解法 1:用两个负号强制转换

=SUMPRODUCT(--B2:B6)

两个负号把每个文本型数字变成真正的数字,SUMPRODUCT 再求和:1200 + 800 + 950 + 600 + 400 = 3950。不需要辅助列,也不用重打。

解法 2:SUM 里包 VALUE

=SUM(VALUE(B2:B6))

VALUE 明确地逐格转换,SUM 再对数组求和。结果相同,而且更贴近实际发生的事——在 Excel 2019 及更早版本要按 Ctrl+Shift+Enter。

相关 Excel 练习

常见问题

明明有数字,为什么 SUM 返回 0?

那些是文本而不是数字,通常来自导出或从网页粘贴。可以用 SUMPRODUCT(--区域)、SUM(VALUE(区域)) 或乘 1 来转换。

怎么不点每一格就知道是文本型数字?

看对齐:文本型数字靠左,真正的数字默认靠右。靠左的数字就是文本值的指纹。