创建一个带有前导零的 CSV 文件,Excel 永远不会删除它

创建一个带有前导零的 CSV 文件,Excel 永远不会删除它

我们都知道 Excel 的烦人行为从导入的 CSV 文件中删除前导零

我是一名开发人员,我想编写一个导出功能,创建一个 CSV 文件,强制 Excel 保留前导零。

我希望“012345”的结果为 012345,但即便如此,Excel 2010 也会删除前导零;(

将文件命名为 *.txt 而不是 *.csv 会强制 Excel 使用向导作为https://www.youtube.com/watch?v=9KDK1FRcmSo建议。但我真的怀疑用户是否知道如何操作向导。他必须在 30 列之一将数据类型从“常规”更改为“文本”。我相信用户只需单击下一步、下一步、完成即可。

有没有更好的想法可以避免使用向导?

在将 CSV 文件导入 Excel 时,是否有官方字符可以“屏蔽”零?我试过 '(打字机撇号)。但在 Excel 中输入'0123与使用 打开 CSV不同'0123

答案1

感谢大家的评论和回答!感谢用户 Ron Rosenfeld,他的推荐导致了这样的实施:

在此处输入图片描述

答案2

这是有效的,并且当公式引用时,该数字仍然被视为数字:

在 CSV 中显示的示例数字是 00141。CSV
文件行:

field1,"=""00141""",field3

答案3

尝试:

="0123"

所以:

{equal}{quote}{numbers}{quote}

顺便说一句:没有冒号,没有空格

答案4

我唯一能想到的进一步想法是:

  • 分发 Excel 文件而不是 CSV

  • 对于您的用户,请安装您自己的 CSV 文件查看器。有许多这样的免费查看器,或者您可以编写自己的脚本或程序,以便正确地将 CSV 导入临时 Excel 电子表格。


(这不再起作用:)

避免 Excel 在导入数值数据时删除零的唯一方法是不要使用数值字段。

您可以通过用双引号将这些字段括起来来实现这一点,这样 Excel 就会将它们解释为文本,如下所示:"000123"

您可以这样做,因为您可以控制导出。

相关内容