VB6.0用掲示板の過去のログ(No.1)−VBレスキュー(花ちゃん)
[記事リスト] [新規投稿] [新着記事] [ワード検索] [過去ログ] [管理用]

投稿日: 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拡張子のデータに「'」を付けると表示でも出てしまいますね…
   自分がやったのはエクセルに出力するときの対応でした
   出力されたデータはエクセルで見る以外に使用しないのであれば最初からエクセルに書き込むほうがいいのかもしれませんが…
   お役に立てず申し訳ありません。


- 関連一覧ツリー (★ をクリックするとツリー全体を一括表示します)

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

- Web Forum -