2012-11-09 45 views
1

我有一个VBA例程,导出数据到CSV导入到另一个应用程序。我正在处理的两个字段具有相当长的XML字符串作为内容。访问文本导出损坏

这两个字段在导出时都被损坏。这些值在查询结果中看起来很好,但是当我将数据导出到CSV时它一塌糊涂。一个例子是:

<ItemSpecifics> 
<NameValueList> 
    <Name><![CDATA[Material]]></Name> 
    <Value><![CDATA[Solid Wood]]></Value> 
    <Value><![CDATA[Pine]]></Value> 
    <Source>ItemSpecific</Source> 
</NameValueList> 
<NameValueList> 
    <Name><![CDATA[Room]]></Name> 
    <Value><![CDATA[Bedroom]]></Value> 
    <???t?t?9\????t?t?t???t?t???t???9???9?????????????9?9???0 

任何想法,为什么会发生这种情况?

- EDIT-- 好吧,这不可能是巧合 - 腐败发生在字符256 ....文本字段的访问限制。看起来很奇怪,因为结果在查询结果中看起来很好......以任何方式解决这个问题?

回答

1

我没有确定的答案给你,但由于我做了很多导入各种数据库和应用程序之间的导出,我以为我会做一些小问题的搜索。

我发现的是,如果您要求Access处理数据(即聚合,重复删除,格式化等),则Access在导出时限制为255。

我知道这并不完全描述你的情况,但我认为这很有帮助。
有人说,限制只有当你从查询中导出,而不是从表中导出。他的解决方案是对临时表执行附加查询,十个导出该表。

祝你好运

+0

标记为接受,因为它会完美的工作。但是,我上面没有提到的一个复杂性是我需要导出在Access中不合法的字段名(即它们包含一个前向空格)。我现在重新编写了代码,以便在VBA中生成和输出长整型值,完全消除了这个问题。谢谢你的帮助。 – cheshirepine

+0

很高兴你有它的工作。 :-) –