我将报告生成为CSV文件.当我尝试在Excel中打开文件时,它会根据单元格的内容对数据类型进行假设,并相应地重新格式化.
例如,如果CSV文件包含
...,005,...
然后Excel将其显示为5.有没有办法覆盖它并显示005?
我宁愿对文件本身做一些事情,这样用户只需双击CSV文件即可打开它.
我使用Excel 2003.
打开.csv文件时,没有一种简单的方法可以控制Excel应用的格式.下面列出的是三种可能有用的方法.
我的偏好是第一种选择.
选项1 - 更改文件中的数据
您可以更改.csv文件中的数据,如下所示...,="005",...这将在Excel中显示为...,005,...
Excel将数据保存为公式,但复制列并使用粘贴特殊值将删除公式但保留格式
选项2 - 格式化数据
如果它只是一个格式问题,那么该列中的所有数据都有三位数的长度.然后在Excel中打开数据,然后使用此自定义格式000格式化包含数据的列
选项3 - 将文件扩展名更改为.dif(数据交换格式)
更改文件扩展名并使用文件导入向导来控制格式.双击时,Excel会自动打开扩展名为.dif的文件.
一步步:
将文件扩展名从.csv更改为.dif
双击该文件以在Excel中打开它.
将启动"文件导入向导".
将"文件类型"设置为"分隔",然后单击"下一步"按钮.
在分隔符下,勾选"逗号"并单击"下一步"按钮.
单击显示的数据的每一列,然后选择"列数据格式".值为"005"的列应格式化为"文本".
单击完成按钮,Excel将使用您指定的格式打开该文件.
不要使用CSV,请使用SYLK.
http://en.wikipedia.org/wiki/SYmbolic_LinK_(SYLK)
它提供了更多的格式控制,Excel不会通过检查内容来尝试猜测字段的类型.它看起来有点复杂,但你可以使用一个非常小的子集.
这适用于Microsoft Office 2010,Excel版本14
我误读了OP的偏好"对文件本身做了些什么." 对于那些想要直接格式化导入的解决方案的人,我仍然保留这个
打开一个空白(新)文件(文件 - >工作簿中的新建)
打开导入向导(数据 - >从文本)
选择.csv文件并导入
在对话框中,选择"分隔",然后单击"下一步".
选择分隔符(取消选中除"逗号"之外的所有内容),选择文本限定符(可能为{无}),单击"下一步"
在" 数据预览"字段中,选择要作为文本的列.它应该突出.
在" 列数据格式"字段中,选择"文本".
点击完成.