我将已转换的记录导出为CSV平面文件。
记录中只包含'string'列数字(-no字母字符),示例值为0410.623.764或0789.457.142
使用MS Excel打开CSV文件后,该值变为410.623.764现在,我想在Excel中打开文件时保持前导0。
因此,使用MS Excel打开CSV时会出现问题。
更新 用记事本打开时,我看到0410.623.764中的前导'0'
更新2: 我在超级用户中找到了一些解决方法,但我对此并不满意。因为我不认为自己一次又一次地应用了2分钟的解决方法。因为我每次收到新的源文件时都会生成新的(目标)文件。
我的问题是:是否有一种在Excel中停止格式化的程序化方法?
答案 0 :(得分:1)
您的流量或输出没有任何问题。 Excel正在“删除”它以便在公式中显示和使用。
您可以配置excel以保留前导零。这是MSDN http://office.microsoft.com/en-001/excel-help/keep-leading-zeros-in-number-codes-HA010342581.aspx
有一些方法可以确保Excel保持前导零。这些问题在这个问题中讨论过:
Add leading zeroes/0's to existing Excel values to certain length
除其他外,TEXT function将允许您保留前导零。
这是另一个有趣的链接:
http://chandoo.org/wp/2012/02/15/use-text-format-to-preserve-leading-zeros/
答案 1 :(得分:0)
在读取数据时,Excel会将其全部设为数字,因此决定将其转换为数字。但要显示带有前导零的数据,它必须是文本。根据Excel版本和文件扩展名(可能还有其他一些内容),Excel会直接打开文件,或使用向导打开它。根据我的经验,已经打开Excel并通过文件/打开选择文件会增加向导出现的可能性。这就是你所需要的。
在向导的最后一步中,选择所有列标题,并将顶部的单选按钮设置从“标准”更改为“文本”。