虽然我尽量避免它,但我偶尔不得不在 Excel 中打开一个 CSV 文件。当我这样做时,它会格式化包含数字的列,这使它们对我的目的毫无用处。据我所知,防止在导入时发生这种情况的唯一方法是重命名文件,使扩展名不是 .csv 并使用导入向导分别指定每列的格式。对于 50-60 列的文件,这是不切实际的。
由于互联网上这个经常被问到的问题的每个答案都暗示了在文件打开后将格式化数字转换回的某种方法(这对我不起作用 - 我想解决一般问题,而不是一些特定情况)或手动选择每列的格式类型(我不想这样做),我正在寻找一种设置全局首选项或样式的方法,以便打开的所有 CSV 文件的所有列始终格式化为文本。我也知道用引号“保护”数字,但我得到的文件不是那样的,我希望避免对文件进行预处理,这样 Excel 就不会把它们搞砸。
有没有办法专门做到这一点:始终将打开的 CSV 文件中的所有列格式化为文本,而无需在导入过程中每次手动选择每一列?
我使用的是 Excel 2003,但如果您知道的话,我会回答 2007 年的问题。
如果您在 Excel 中键入诸如以 0 开头的电话号码之类的内容,则默认情况下,Excel 会假定用户的意思不是他们所做的,将文本转换为常规数字,并删除前导 0。
有多种解决方法可以避免这种情况,例如,如果打开像 CSV 这样的文件,或者使用自定义单元格格式,或者'
如果您手动输入文本,则输入 a等时的文本导入设置。
但是,我想要的是excel 永远不要删除前导零,除非我特别告诉它将单元格视为数字。
我希望 excel 默认以012345
相同的方式处理Q12345
. 如果它以 0 开头,则假设用户知道他们在做什么,并将其视为文本,而不对其进行更改(无论是否手动输入、复制、导入等,默认情况下在所有工作簿的任何地方) .
这可能吗?
我能找到的关于此的所有内容都与“如何在 X 特定上下文中保持前导零”的方向一致 - 我正在寻找在我的 Excel 副本的每个工作簿的每个单元格中始终保持前导零的东西,除非我告诉它将特定单元格格式化为数字。
(我使用的是 Excel 2007,但如果在较新的版本中可以实现,我可能会为此升级)