导出对CSV的访问权限

时间:2013-07-04 12:05:13

标签: csv access-vba

我想将访问查询导出到csv文件中。为此,我使用以前的格式,这在前面的堆栈溢出讨论中给出。

Function ExportQuery()
    DoCmd.TransferText acExportDelim, , "[your query]", "[output file].csv"
End Function

我将输出作为CSV文件,但数据在工作表的列中分开。我希望在所有列的第一列本身中用分号分隔数据。

请尽快恢复。

2 个答案:

答案 0 :(得分:4)

我得到了我的问题的答案。

如果你想放置任何分隔符,如逗号,分号等。

双击要导出的查询或表格。然后单击“文件”选项卡中的“导出”。提供文件名并选择文本文件(Access 2003)。然后单击“全部导出”。导出文本向导将打开。选择单选按钮分隔,然后单击“高级”。然后选择所需的Field Delimiter。并选择Text Qualifier为none。然后选择“另存为” 并给出规范的名称。并像在手动过程中一样完成整个过程。保存后,关闭文件CSV和访问。

保存规格名称后,VBA代码将如下所示:

Function ExportQuery()
     DoCmd.TransferText acExportDelim,"Specification Name" , "[your query]", "[output file].csv"
End Function

所以只在代码中添加“规范名称”。

答案 1 :(得分:0)

使用此处的 Java 代码可以轻松地将 Access 数据库导出到 csv 文件:

https://github.com/NACHC-CAD/access-to-csv-tool

此代码包含测试代码中的完整示例,并完整导出了nortwinds 数据库。

有关将单个表转换为 .csv 文件的代码,请参阅类 AccessToCsvUtil。

查看类 WriteToCsvIntegration 测试以查看导出数据库中所有表的代码。

此实用程序基于 ucanaccess jdbc 工具和 Apache commons-csv 工具。

    <dependency>
        <groupId>net.sf.ucanaccess</groupId>
        <artifactId>ucanaccess</artifactId>
        <version>4.0.4</version>
    </dependency>


    <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-csv</artifactId>
        <version>1.8</version>
    </dependency>