【问题标题】:How to maintain leading zeros within an Excel file format如何在 Excel 文件格式中保留前导零
【发布时间】:2018-09-13 05:22:17
【问题描述】:

我尝试过使用 csv 和 txt 格式,但它们各自都有自己的问题。

使用 csv 格式,我发现可以在数字前添加一个制表符,这将保留前导零,但是当用户在数字前面添加字符时,在数字前面会有一个空格数的中间。

对于 txt 格式,保留前导零的唯一方法是将 txt 文件导入 Excel 并指示将其中包含数字的每一列转换为文本单元格。由于客户可能正在打开此文件,因此这些说明太难了,不能依靠客户来避免搞砸。

基本上我需要的是一种文件格式或一种编辑 csv 的方法,它允许它在 Excel 中打开时保持前导零,但也可以在不丢失数字完整性且不显示任何特殊字符的情况下进行编辑编辑单元格时。请让我知道任何需要澄清的地方,因为这是一个奇怪的具体问题。

【问题讨论】:

  • 我认为您需要使用支持格式化数据的更复杂的电子表格文件格式,例如 XLSX 或 XLS。您是否引用了 CSV 中的值?如果您还没有这样做,这可能会有所帮助。
  • 是的,我引用了它们,但是当我在 Excel 中编辑它们时,它会显示引号。如果客户意外删除了一个,它可能会毁掉一切。 XLSX 和 XLS 的问题在于我们有一个框架,需要进行大规模的检查才能编辑该文件格式。我主要寻找的是一种文件格式,我可以编辑原始文本,使其保持前导零而没有引号或制表符
  • 数字导入后为什么不格式化呢?突出显示要设置格式的单元格/范围并右键单击,然后选择设置单元格格式。在数字格式中选择列表底部的自定义项,然后在类型输入区域中输入“000000000”。这将格式化任何带有前导零的数字。
  • 这就是问题所在。最终用户正在打开它,我不能对他们进行任何处理。这就是我一直在寻找的解决方案。

标签: excel ms-office leading-zero


【解决方案1】:

由于您要导入文本或 CSV,我假设您使用的是“从文本中获取数据”工具。保持前导零的方法是在导入的第 3 步中将导入的字段设置为“文本”而不​​是“常规”。

如果您需要将前导零添加回指定长度,您也可以使用Right(Concatenate("00...00",text cell),desired length of field)

【讨论】:

  • 如果我可以将它添加到 CSV 中,这将起作用。需要从原始文件(如 csv 或 txt 文件)中获取解决方案。到目前为止,最好的解决方案是为字段选择带有前导零的文本,但理想情况下,一旦打开文件,就不会有任何交互。
  • 不幸的是,对于 CSV 和 TXT 文件,如果直接在文本编辑器中编辑文件,则无法保留任何格式的格式。您可以编写一个 VBA 脚本来加载和更正文件,然后将它们导出回文本格式,但在文本文件中保留任何类型的字段格式是不可能的。
猜你喜欢
  • 1970-01-01
  • 2014-09-01
  • 2021-06-20
  • 2014-02-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-03
  • 1970-01-01
相关资源
最近更新 更多