Excel里数字太长显示为科学计数法如何显示完整数字
Excel里数字太长显示为科学计数法如何显示完整数字
注意:以下测试都是在macos的Microsoft Excel for Mac的16.53版本中实际测试的,在windows中应该也是一样的。
一、问题描述
数字太长在Excel中会显示为E+形式
有些值,比如身份证号、银行卡号,因为数字太长了,会显示为科学计数法的形式,其中E+17就是10的17次方的意思,如下:
补充:
1、不仅仅显示为E+的形式,更重要的是后面几位数变成0丢失了精度,原来输入的是340102197802062712,最后3位变成了0
2、如果输入00340102197802062712,开头的0也会被忽略,同样变成340102197802062000(也丢失了精度)
2、身份证号18位,银行卡号一般19位。
另外我们手机号码11位也容易被显示为科学计数法,但是只要将列宽调大就能完整显示(但实际还是被当做数字),如下
像身份证号和银行卡号这种长到一定长度的,调宽了也没用,依旧展示科学计数法
二、如何不显示E+ (同时保证数字前面的0不丢失,后面的精度也不丢失)
有几种情况:1、从别处拷数据到Excel,如何避免;2、Excel里数字已经是E+了如何改过来(这种情况下数字前面的0已经丢失,后面的精度也丢失了,生米煮成了熟饭,只能保证改成不用E+显示)
情况一、从别处拷贝数据到Excel里,想保证不出现E+,且不能省略掉开头的0,且不丢失精度
要提前将Excel的单元格指定为Text
比如你要拷贝如下值到Excel中
340102197802062712
00340102197802062712
1234
你得提前设置好单元格的格式为Text,如设置A列为Text,再粘贴过去则得到如下正确的结果:
如果你不提前设置,粘贴过去之后就如下所示
关于Excel单元格左上角绿色的小三角的细节:
PS:如何调整单元格格式,如何知道当前单元格的格式?
如何调整单元格格式?
选中要调整的单元格,可以选中整列或整行,右键 -> Format Cells... -> Number 列中选中 Text 后点击OK (我的是英文版,中文版也差不多)
如何知道当前单元格的格式?
如果选中的一列中包含有各种各样的格式,那么上图中展示为什么?答:不太清楚规律,不是展示为空,规律我不太清楚
情况二、Excel中某列已经是E+的数据了,如何调整?
这种情况下,数据前面的0和精度已经丢失,生米煮成熟饭无法挽救,这里的挽救仅仅是将E+形式展示出来。
如图,
可以 “先复制到纯文本中,再设置好单元格Text格式,然后再粘贴回去” 吗?不行!。如上图复制出来后变成了如下,设置到Text格式后粘贴回去没用了
3.40102E+17
3.40102E+17
1234
1、方法1:使用分列功能(最推荐)
- 选中E+的列(可以选中一整个列,也可以选中截止到有数据的行)
- 选择 “数据”(Data)的tab,选择 “分列”(Text to Columns)向导
- 向导第一步是问你要用分隔符还是固定宽度切割你的列的数据,选择分隔符号(Delimited)
- 向导第二步是问你的分隔符号是什么,因为你的数据是数字,其实并没有什么分隔符,是一个整体,你也不可能想将一列分为更多列,这里可以保持默认点击下一步即可
- 向导第三步是问你目标列要用什么格式,当然选择Text,然后点击Finish
详细参考这里有动图:https://www.jianshu.com/p/61790960ae62
注意:
2、不可行的方法:选中数据改成 “文本” 格式(这个方法不行,但是网上的资料千篇一律都给了这个答案)
这个方法对于已经存在的数据是改变不了的,只有对于新数据才生效(这种说法也不完全正确,你需要逐行鼠标双击之后才能展示为非E+格式)
3、方法2:使用=text(A1,0)函数
- 在新的一列中使用
=text(A1,0)
,并扩展到其他行(假设原来的数据在A1) - 复制新列,粘贴到更加新的列,粘贴的时候选择只粘贴值,这样就可以消掉公式
4、方法3:或追加一个空串变成字串(=A1&“”)
- 在新的一列中使用
=A1&""
,并扩展到其他行(假设原来的数据在A1) - 复制新列,粘贴到更加新的列,粘贴的时候选择只粘贴值,这样就可以消掉公式
其他小细节:
数字会默认右对齐,字符串左对齐,可以通过这个判断一串数字是字符串还是数字(但是被认为调增对齐方式后就不好判断了)
附录
搜集到的比较好的教程
https://www.jianshu.com/p/61790960ae62 (EXCEL如何把数值批量转换成文本?有动图演示)
Excel里数字太长显示为科学计数法如何显示完整数字相关推荐
- PHP防止数字太大转化为科学计数法的方法
PHP当数字在20位或者20位以上时,会转化为科学计数法 例子: <?php echo 11111111111111111111; ?> 解决方法可以使用php函数number_forma ...
- c# 导出excel 数字太长而显示为科学计数法的解决方法
c# 导出excel 数字太长而显示为科学计数法的解决方法 <td style=\"vnd.ms-excel.numberformat:@\"> {0}</td& ...
- php导出数字成科学计数法,php导出excel长数字显示成科学计数法格式的解决方案...
php导出excel长数字显示成科学计数法格式的解决方案 首先,我们了解一下excel从web页面上导出的原理.当我们把这些数据发送到客户端时,我们想让客户端程序(浏览器)以excel的格式读取它,所 ...
- wps修改csv文件中的科学计数法修改为完整显示
wps修改csv文件中的科学计数法修改为完整显示 问题 解决方案 问题 最近在工作中合作方提供了一个csv文件,直接用wps打开发现里面的id变为了科学计数法(如下图),也无法通过修改单元格格式在修改 ...
- PLSQL查询字段为科学计数法,修正显示
打开PLSQL工具- toad中->view->option->data->display large number in scientific notation pl/sql ...
- numpy使用np.set_printoptions函数抑制numpy数组输出结果使用科学计数法进行显示(suppressing scientific notation in numpy array)
numpy使用np.set_printoptions函数抑制numpy数组输出结果使用科学计数法进行显示(suppressing scientific notation in numpy array) ...
- java科学计数法转十进制_Linux下科学计数法(e)转化为数字的方法
科学计数法使用e标识数值,将科学计算学转化为数字的思路:按e右边的数字移动小数点位数.e右边的数字如果是负数,则向左移动小数点.示例如下: 1.2345678e2 = 123.45678 1.2345 ...
- 如何让Excel里显示的数字避免通过科学计数法来显示
我把Hybris里产品主键拷贝到excel里后, 发现这些字符串格式的主键在excel里以科学计数法的方式显示,看起来很不方便: 避免这种情形的办法也很简单: 在单元格的值前面加上英文输入法里的单引号 ...
- excel之数字转字符串,取消科学计数法
有时数字太长,excel默认会用科学计数法来表示.比如身份证,手机号码等. 但是我们并不想用.那么该怎么办呢? 有两种情况, 一是还没有输入的情况下,可以在该列选中,然后选择文本类型,输入即可. 或者 ...
最新文章
- 03-NSPredicate谓词
- 解决ngnix服务器上的Discuz!x2.5 Upload Error:413错误
- 需求评审五个维度框架分析及其带来的启示-5-结束语
- EF修改对象里面的值。。。(对象字段多的时候)
- 【cocos2d-js官方文档】二十五、Cocos2d-JS v3.0中的单例对象
- Flume安装(单节点)
- 整个线上营销_而言,最重要的是什么?
- 关于 Java 字符串的全部,都在这份手册里了
- 持久化存储技术之SharedPreferences存储
- eclipse引入jar类包的源代码
- ID卡介绍和工作原理
- 老男孩爬虫实战密训课第一季,2018.6,初识爬虫训练-实战2-自动登陆抽屉网
- 2020身高体重标准表儿童_2020最新宝宝身高体重标准表(中国标准版)
- NYOJ 33 蛇形填数——————思维
- 消费新品周报 | AWE海尔推出无尘洗衣机;卡西欧F1红牛车队合作新款运动手表...
- 键盘修改器,绝对管用
- 7个免费的云平台,快来发布你的项目吧
- 深入了解,学习线索二叉树
- leangoo大讲堂—北京站
- Cocos Creator | 挤水果小游戏实现 ( 二 )