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

Excel 365导入CSV文件时小数点丢失:44.4变为444

解决CSV导入Excel(Office 365)时小数变为整数的问题

我之前处理CSV导入时也踩过一模一样的坑——明明改了系统区域的小数符号,结果44.4还是变成了444。这种情况本质上是Excel导入时的格式识别逻辑没跟上你的设置,下面给你几个亲测有效的解决步骤:

方法1:用Power Query精准导入(推荐)

Office 365的Power Query工具比旧版导入向导靠谱太多,能精准控制每一步的格式:

  • 打开Excel新建空白工作簿,点击顶部「数据」选项卡 → 「自文本/CSV」
  • 选中你的CSV文件,点击「导入」,在预览窗口里点「转换数据」进入Power Query编辑器
  • 先确认分隔符是逗号(在「主页」选项卡的「拆分列」里可以调整)
  • 选中那列出问题的小数列,点击「转换」选项卡 → 「数据类型」,直接选择「小数」;如果之前被识别成了文本,先转成文本再转小数,避免自动格式化错误
  • 确认预览里的数字显示正常后,点击「关闭并上载」,数据就会正确导入了

方法2:手动指定导入时的分隔符和小数格式

如果习惯用旧版文本导入向导,可以这样操作:

  • 右键CSV文件,选择「打开方式」→「Excel」,此时会弹出文本导入向导
  • 第一步选择「分隔符号」,点击「下一步」
  • 勾选「逗号」作为分隔符,然后点击「高级」按钮
  • 在「高级文本导入设置」里,把小数分隔符设为「.」,千位分隔符设为「,」(根据你的需求调整),点击确定后继续完成导入

方法3:先按文本导入再转格式

怕Excel自动识别搞砸的话,可以先把列设为文本导入,再转成数字:

  • 在文本导入向导的第三步,选中包含小数的列,把「列数据格式」改成「文本」
  • 导入完成后,选中这列,右键选择「设置单元格格式」→「数字」→「数值」,指定小数位数为1,就能正确显示44.4了

额外检查:确认CSV文件本身的内容

用记事本打开你的CSV文件,看看里面的44.4是不是确实用「.」做小数分隔符——有时候原系统导出的CSV可能暗藏格式问题,比如实际是用逗号做小数,但你改成了点的区域设置,Excel就会把逗号当成分隔符,把数字拆成两部分后拼接成整数。

内容的提问来源于stack exchange,提问作者Thomas Kristiansen

火山引擎 最新活动