- 締切済み
ダブルコーテーション付きでCSV出力
ACCESSでcsvを出力するように作りたいと思っています。 フォームで画面を設けボタンを押すとテーブルのデータをcsvとして出す仕組みです。 ボタン押下で以下のメソッドがよばれてcsvが出力されるようにしました。 DoCmd.TransferText acExportDelim, "Q_基本情報 エクスポート定義", "Q_基本情報CSV", scsvfileNm, True csvは出力されたのですが、テーブルカラムがnullの場合、以下のように出力されてしまいます。 ^^^^部分が"(ダブルコーテーション)が付きません。 "2",,"会社",,,,"0" ^^^^ ^^^^^^ 以下のようにnullでも""が付いて出されるようにしたいのですが、 TransferTextメソッドでは無理なのでしょうか "2","","会社","","","","0" どなたか詳しい方教えてください。お願い致します OS、アクセスのバージョンは以下のようになっています。 OS:windowsXP ACCESS2003
- みんなの回答 (4)
- 専門家の回答
みんなの回答
- bin-chan
- ベストアンサー率33% (1403/4213)
手元に試す環境が無いんですが。 Nullになる可能性がある列をすべてNZ関数でくくるとどうなります? select nz(列1), nz(列2) from Table のように。
- ShowMeHow
- ベストアンサー率28% (1424/5027)
nullでなくて、ブランクに書き換えても良いというのであれば、 UPDATE Table1 SET Table1.Field1 = "" WHERE Table1.Field1 Is Null のようなクエリを(すべてのフィールドに対して)作って、実行するとか。
- nicotinism
- ベストアンサー率70% (1019/1452)
全てにダブルコーテーションを付けたいということでしょうか? 地道にレコードセットを回してファイルに書き込むしか手は無いのでは?
- layy
- ベストアンサー率23% (292/1222)
「"」「,」を1項目と見なせば クエリを使って直前に編集することができ、 区切り記号なし、としてエクスポートする。 面倒ですが・・・。 「","」項目 +項目「"会社"」 +「","」項目 ・・・・ TransferTextを使わないでVBAでテーブルからcsvファイルを生成する、 と「"」を必要に応じて付与することができます。 どちらかですが、 事前にnullにさせない方を考える方が早いと思います。