从Access 2007导出CSV时,它会自动将小数转换为科学计数法。不幸的是,接收这些数据的工具将这些字段视为文本,并按原样显示。被导出的值来自针对一些Excel链接表运行的查询,在查询视图中它们看起来完美无缺。有没有办法禁用自动转换为科学计数法?也就是说,如果在查询中出现0.007,则在输出CSV中将显示为0.007而不是7E3?注意:我必须使用Excel和Access进行此操作。尽管我很想切换到SQL Server,但如果我在她的工作笔记本电脑上安装它,我的妻子会很不高兴!
you can use the Format()
function directly in your query to force the data in the offending columns to be formatted a certain way, for instance:
SELECT ID, Format([Price],"standard") as Pricing FROM ORDERS;
you can write your own CSV export routine in VBA.
I posted one recently as an answer to this question.
您可以轻松修改代码以按特定方式格式化数字类型。
如果您不知道如何操作,请告诉我,我会修改代码并在此处发布。
在查询中处理这个问题的一种简单方法是将该值转换为长整型,然后再转换为字符串。 对于CSV导出而言,它无论如何都是字符。
myValue:ZString(ZLong(123456789))