AccessVBAでテーブルをCSVファイルにエクスポートする方法

AccessのローカルテーブルやOracleやSQL ServerのリンクテーブルをVBAで簡単にCSVファイルにエクスポートする方法をご紹介します。

エクスポート定義の保存

定義を保存する目的

VBAでAccess上のテーブルをエクスポートする前に、エクスポート定義を保存しておく必要があります。

エクスポート定義とは、「フィールド区切り記号の設定」、「西暦を4桁で表示するかの設定」や「日付に0を表示するかの設定」などを定義したものです。

予めこれらの設定を定義として保存しておいて、VBAからCSVファイルにエクスポートする際に、保存済みの定義を指定します。こうすることで柔軟にCSVファイルにエクスポートすることができるようになります。

定義の保存方法

エクスポートするテーブルを選択し、テキストファイルへのエクスポートを手動で実行します。

画面左下の「設定」をクリックすると、

その中で、先ほど説明した「西暦を4桁で表示するか?」などの設定をすることができます。

最後に保存ボタンをクリックしてエクスポート定義を保存します。

VBAでエクスポート

以下のように書きます。

DoCmd.TransferText acExportDelim, "エクスポート定義の名前", "エクスポートするテーブル名", "CSVファイル名", True

AcTextTransferType の種類
定数内容
acExportDelim2区切り記号付きエクスポート
acExportFixed3固定長エクスポート
acExportHTML8HTML エクスポート
acExportMerge4Word 差し込みデータ エクスポート

この一文で、Access上のローカルテーブルもしくはOracleやSQL ServerのリンクテーブルのデータをCSVファイルにエクスポートすることができます。

まとめ

今回は、AccessのVBAを使って簡単にテーブルのデータをCSVファイルにエクスポートする方法をご紹介しました。

簡単なので是非試してみてくださいね♪

その他のAccess関連記事

AccessVBAでクエリ実行時の確認メッセージを完全に非表示にする方法

AccessVBAで更新クエリを実行する方法

AccessVBAでオートナンバーをリセット(初期化)する方法

シェアする

  • このエントリーをはてなブックマークに追加

フォローする