Excel数字按万显示且不保留小数:自定义格式
讲清Excel自定义格式能做什么、做不到什么:用辅助列按万显示且不保留小数,原始数据保持不变,并给出ROUND取整和文本两种替代写法。
很多人做财务表或销售汇总时,原始金额是几十万、几百万的整数,汇报时却希望只看到“12 万”“386 万”这样的写法。直接改原数据,后续计算容易出错;把数字转成文本,公式又会断掉。
这篇文章讲怎样让 Excel 只在显示上按万计,原数据保持不动,同时不保留小数。读完你能知道三件事:自定义格式能做到什么、做不到什么,以及遇到做不到的情况时,用哪种辅助列写法稳妥。
怎么让数字按万显示且不保留小数?一句话结论
自定义格式可以控制显示的单位和小数位,但不能直接除以 10000。稳妥的做法是:保留原列,在旁边用公式算出以万为单位的数,再给这一列设置不带小数的 0"万" 格式。
| 你的情况 | 推荐做法 | 原因 |
|---|---|---|
| 只想让数字看起来是万,计算不受影响 | 辅助列写 =B2/10000,格式设为 0"万" | 原列保持原值,辅助列用于展示和汇总 |
| 万值需要取整后再参与计算 | 辅助列用 =ROUND(B2/10000,0) | 存储值本身变成整数,而不只是显示整数 |
| 只要一段文字放进报告 | 用 =TEXT(B2/10000,"0")&"万" | 结果是文本,不能再直接求和 |
| 原本就是千或百万单位 | 直接用 0, 或 0,, 格式 | 每个逗号表示按千位缩小一级,两个逗号表示再缩小一级 |
开始之前:先确认这几点
- 确认原数据是数字,不是文本。 左对齐、单元格左上角有绿色小三角的,通常是文本。文本不参与缩放,数字格式对它无效。
- 确认你要的是显示效果还是计算结果。 如果只给别人看,用格式即可;如果后面要求和、算占比,就要用公式算出的数,并在表头标明“万”。
- 确认取整规则。 显示取整通常按四舍五入,例如 123456.78 显示为 12 万。若汇报数字要和明细严格对得上,需要提前决定用显示取整还是 ROUND 取整。
- 确认有没有其他公式引用这一列。 新增辅助列不会影响原列,但引用辅助列的汇总表要重新检查,避免连锁错位。
在辅助列里按万显示且不保留小数的步骤
- 打开工作簿,找到要按万显示的数据列。假设销售额在 B 列,从 B2 开始。
- 在右侧空白列(如 C 列)的 C2 输入
=B2/10000并回车。这一步得到的是以万为单位的数值,B 列不会被修改。 - 把 C2 的公式向下填充到最后一行数据,确认每一行引用的都是同一行的原数据。
- 选中 C 列的数据区域,打开单元格格式设置,进入数字选项卡,选择自定义类型,然后在类型框中输入
0"万"。双引号内的万是文字,只用于显示,不参与计算。 - 检查显示效果:若 B2 为 123456,C2 应显示为 12 万,编辑栏中的存储值仍是 12.3456。
- 如果需要存储值也是整数,把 C2 的公式改为
=ROUND(B2/10000,0),再沿用同一格式,此时显示和存储都是整数。 - 在数字设置中把小数位数设为 0,确认显示中没有多余的小数点。
- 给 C 列标题加上单位,例如改为“销售额(万)”,让读者不必猜测单位。
做完后逐项核对
| 检查项 | 怎么看 | 有问题怎么办 |
|---|---|---|
| 数值是否正确 | 选中 B2 和 C2,编辑栏里 C2 应是 12.3456 这样的数 | 检查公式是否引用错行,重新填充 |
| 单位是否是万 | 对照 123456,应显示 12 万,而不是 123 万 | 若显示为千位数,说明误用了 0, 格式,改回 0"万" |
| 小数是否已去掉 | 数字设置中小数位为 0,单元格没有小数点 | 调整格式代码或小数位数 |
| 合计是否对得上 | 对 C 列求和,与 B 列求和除以 10000 比较 | 若有差额,多半来自取整,改用 ROUND 或在备注中说明口径 |
| 是否存在文本数字 | 看是否左对齐、有绿色三角 | 先把文本转为数字,再重新计算 |
📊 核心对比
同一个原始值 123456,用不同写法得到的显示和存储结果并不相同。下表可以帮你判断该选哪一种。
| 写法 | 显示结果 | 存储值是否改变 | 能否继续计算 |
|---|---|---|---|
辅助列 =B2/10000,格式 0"万" | 12 万 | 否,存储 12.3456 | 能 |
辅助列 =ROUND(B2/10000,0),格式 0"万" | 12 万 | 是,存储 12 | 能 |
原列直接设置 0,"万" | 123 万 | 否 | 能,但单位是错的 |
=TEXT(B2/10000,"0")&"万" | 12 万 | 是,变为文本 | 不能直接求和 |
从表中可以看到,直接给原列设置 0,"万" 看起来省事,实际显示的是千位,容易让读者误解金额大小。需要按万计时,建议还是用辅助列。
❓ 常见问题(FAQ)
1. 能不能不加辅助列,直接在原列上按万显示?
可以用自定义格式实现部分效果,但格式只能按千位分隔符缩小显示,无法做到除以 10000。若要准确显示万,仍需要一列公式计算万值。
2. 显示 12 万,编辑栏却是 12.3456,这正常吗?
正常。显示格式只改变看到的内容,编辑栏里的是实际存储值。你求和时,用的是 12.3456,而不是 12。
3. 数字设置了格式却没有变化,怎么办?
先检查单元格是否为文本,文本不会参与数字格式的缩放。把数据转为数字后,再重新设置格式。
4. 千万级金额怎么显示成“万”,又不保留小数?
可以写成 =ROUND(B2/10000,0) 后设置 0"万" 格式,例如 12345678 会显示为 1235 万。若需要更大的单位,可以另用一列计算亿值,思路相同。
📝 总结
Excel 的自定义格式适合控制显示样式,但不适合承担除法运算。用辅助列算出万值,再配合不带小数的 0"万" 格式,就能在保留原始数据的前提下,让报表读起来更清楚。


