Excel为什么编辑栏显示数字,单元格显示科学计数法?

68 2023-12-13 22:35

谢谢

@dominee dominee

邀请

一、是什么?

在Excel在常规格式下,数字超过11位(12位起)就会自动以科学计数法显示,实际上单元格中的值还是编辑栏显示的值,你也可按Ctrl+~显示公式,这样也可以看到单元格中真正的值。

如果数字超过15位(16位)起,就会自动将15位以后的数字以0显示,

这也常使得Excel初级用户在输入18位身份证号码时,看到身份证后3位自动变为0时,会感到大惑不解。

二、怎么办?

  1. 如果数字需参与计算
  • 可以将单元格设置为数值,然后将小数位位数设置为0
  • 可以使用自定义格式#,或0,
  • 如果还有小数位,那根据需要设置小数位#.00

2. 如果不需要参与计算

  • 可以使用分列功能或设置单元格格式+剪贴板将此列设为文本格式。

三、为什么?

为什么超过11位就会自动以科学计数法显示呢?具体原因不得而知,下面是我推测的原因,有请微软

@Office 365

为我们确认一下。

我们知道,Excel是以浮点计数方法来存储和计算数字的,因而会出现Excel有时候做不了简单的算术数字的情况,比如在单元格输入=42-41.7,计算结果居然不是0.3,而是0.299999999999997。聪明的Excel有时就是这么笨!

那什么是浮点计算呢?

由于计算机内存位数的限制,Excel可以存储的最大数或最小数也是有限的。

但我们需要处理的数字可能是非常大,那如何才能在有限的内存位数情况下,尽量表达最大的数字呢?Excel的浮点数以二进制存储,并分为三个部分,总长度为 65 位:符号、指数和尾数。

1 个符号位+11 位指数+1 个隐含位+52 位尾数

指数位数是11位,不知道数字超11位就自动以科学计数法显示,是不是与这个有关,有请微软

@Office 365

为我们确认一下。

本人的微信公众号:Excel偷懒的技术

本公众号坚持分享原创Excel文章,求实用、接地气、不炫技

欢迎大家关注

顶一下
(0)
0%
踩一下
(0)
0%
相关评论
我要评论
点击我更换图片