You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

XLSX转CSV时保留长数字原始格式(避免科学计数法)的技术求助

XLSX转CSV时保留长数字原始格式(避免科学计数法)的技术求助

嗨,我完全懂你碰到的这个糟心问题——Excel 2016里的「Code」列,单元格显示的是科学计数法(比如6.16611E+12),但点进编辑栏能看到完整的长条码数字(比如6161101860079),存成CSV后打开却只剩科学计数法,哪怕提前把列改成Text格式也没用对吧?

这背后的原因是:你之前只是修改了单元格的显示格式,但单元格底层的数据还是「数值类型」,Excel在保存CSV时会自动对长数值采用科学计数法输出。要解决这个问题,得把数值真正转换成文本类型的数据,而不是光改格式。下面给你两个实测有效的方法:

  • 方法一:用分列工具彻底转成文本

    1. 选中「Code」整列
    2. 切换到顶部的数据选项卡,点击「分列」按钮
    3. 第一步直接点击「下一步」(默认是分隔符号模式,不用改)
    4. 第二步取消所有分隔符的勾选(比如逗号、制表符这些都不要选),再点「下一步」
    5. 第三步在「列数据格式」区域选择「文本」,最后点击「完成」
      操作完你会看到单元格里的数字变成左对齐(这是文本型数据的典型标志),此时再保存为CSV,用记事本打开就能看到完整的长数字了。
  • 方法二:用公式转换后粘贴值

    1. 在「Code」列旁边插入一个空白辅助列(比如B列)
    2. 在辅助列的第一个数据单元格(比如B1)输入公式:=TEXT(A1,"0")(把A1换成你Code列的第一个数据单元格)
    3. 下拉公式填充整列,此时辅助列会显示完整的文本型数字
    4. 选中辅助列,右键点击「复制」,再选中原「Code」列,右键选择「粘贴选项」→「值」
    5. 删除刚才的辅助列,再保存为CSV即可

如果你的条码数字开头有0,这两个方法也能完美保留开头的0,比单纯改单元格格式靠谱得多。

备注:内容来源于stack exchange,提问作者Jay Bee

火山引擎 最新活动