投稿日 | : 2004/06/03(Thu) 23:01 |
投稿者 | : ken.1 |
Eメール | : |
URL | : |
タイトル | : Re: csvファイルへの書き込み |
> こんばんは。書き込み失礼いたします。
> もしかしたらVBとは関係なくなってしまうかもしれないのですが、
> ファイルの書き込みの手立てを教えていただきたい為、こちらに書き込みました。
> もしも場違いでしたらその旨のレス、お願い致します。
>
>
> 現在VB6.0でファイルの処理を行っています。
>
> ADOのRecordsetで取得したデータをWrite#でcsvファイルに保存します。
> 保存したcsvファイルをテキストで開くと以下のように保存されています。
>
> "氏名","郵便番号","住所"
> "*****","0013322","***************"
>
>
> ところが、このcsvファイルをExcelで開いた(ExcelはVB
> プログラムではなく、csvファイルのアイコンダブルクリックし
> て起動)ところ、以下のようになってしまいました。
>
> ------------------------------
> | A | B | C |
> ------------------------------
> 1 |氏名 |郵便番号 |住所 |
> ------------------------------
> 2 |***** | 0|********|
> ------------------------------(←見えないかもしれませんがExcelのセルです。)
>
> 郵便番号の"0013322"が日付型として読まれてしまい、正しく表記されません。
> VBプログラムからExcelを起動するのであればこちらのHPに掲載されている、
> 「Excel上にCSV及びTXTファイルをデータ型を指定して読込む」を参考にできる
> のですが、アイコンダブルクリックでExcelを起動するため、csvファイルに書き
> 込む部分から変えなければ正しく表示されないのではないかと考えております。
>
> しかし、どのように書き込んでもExcel上で"0013322"が正しく表示されません。
> どのように書き込んだら正しく表示されるでしょうか。
> また、他に何か方法がございましたらアドバイスをよろしくお願い致します。
はじめまして、ken.1と申します。
私も以前同じような状況ではまってしまいまして以下の方法で逃げました。
文字型のフィールドの頭に「'」を付加して出力する
先輩に散々バカにされた手法ですがよろしければ試してみてください(笑
修正:んーCSV拡張子のデータに「'」を付けると表示でも出てしまいますね…
自分がやったのはエクセルに出力するときの対応でした
出力されたデータはエクセルで見る以外に使用しないのであれば最初からエクセルに書き込むほうがいいのかもしれませんが…
お役に立てず申し訳ありません。