昨天老板让我做一份合同。其中要把一份PDF报表转成Excel。结果打开一看,所有长数字都变成了“1.23E+08”这种科学计数法,根本没法看。客户要的是原始数字,我弄了半天才搞定。
我以前也碰到过这个问题,试了好几种方法才找到管用的。今天就把我试过的3种方法分享出来,给遇到同样问题的朋友一个参考。
问题原因
PDF转Excel数字变科学计数法,是因为Excel默认把长数字当成“数字”处理了,位数太多就自动转成科学计数法。身份证号、订单号、银行账号最容易出这个问题。
方法一:转之前加引号
这个方法是我从网上学的。转之前,在PDF里给数字前面加一个单引号,Excel就会把它当文本处理。
操作步骤:
1. 打开PDF
2. 在长数字前面加一个单引号(')
3. 转Excel
4. 打开,数字就是正常的
实测感受:
· 转出来就是文本,不会变
· 不花钱
缺点:
· 要在PDF里一个个加引号
· 数字多了,加到手酸
· 文件不能有编辑限制
这个方法我试过,有用,但一个个加引号太累。
方法二:手动调格式
最常见的办法。转完Excel后,选中那列,把格式从“数字”改成“文本”。
操作步骤:
1. 打开Excel
2. 选中数字变乱的那一列
3. 右键,选“设置单元格格式”
4. 选“文本”
5. 确定
实测感受:
· 不花钱
· 能改回来
缺点:
· 改完格式,数字可能还是乱的
· 要重新输一遍才能恢复
· 列数多了,一个个改太慢
试了一次,改完格式数字还是乱的,要重新输,太麻烦。
方法三:先转TXT再转Excel(最管用)
这是我现在用的方法。先把PDF转成TXT纯文本,再导入Excel,数字就不会变了。
操作步骤:
1. 用PDF24把PDF转成TXT
2. 打开Excel,点“数据”→“从文本/CSV导入”
3. 选刚才的TXT文件
4. 导入时,把长数字那列设为“文本”
5. 完成
实测感受:
· 数字不会变科学计数法
· 一次搞定,不用一个个改
· 免费
缺点:
· 多了一步,但比一个个改格式省事
· TXT导入时要注意分隔符
这个方法我用了好几次,每次都很管用。那个报表,用这个方法转完,所有长数字都是正常的,不用再调。
3种方法怎么选?
需求 推荐
数字少、不怕麻烦 手动调格式
数字少、PDF可编辑 加引号法
数字多、要省事 先转TXT再转Excel