• ベストアンサー

Excelでゼロプレスした数値のあるCSVファイルを正しく読みたい。

自作のアプリケーションプログラムから出力した、CSVファイルがあります。 このデータの中に、ゼロプレスした固定サイズの数値があります。例えば、000321です。 このCSVファイルをExcelで読み込ませたのですが、321と表示されます。 この0が落ちるのを防ぐ方法はないでしょうか? 但し、Excelは表示に利用するだけなので、起動以外の操作はできません。また、テキスト読み込みを行って文字列として設定するような、操作をする事もできません。 CSV以外に、このフォーマットだとOKなどの情報でも良いです。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

ウチで「Excelで眺める」だけのcsvを作るときは、 1,1,1024,1024,="0010206","2004/04/01","grumpy_the_dwarf" のように頭に等号を付けた文字列として吐かせてます。これだと Excel側では何にもしなくてオッケーです。

XxXxXxXxXx
質問者

お礼

はい、そのとおりでした。 この解答を見る前に、自己解決できました。 解答ありがとうございました。

その他の回答 (1)

  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.1

こんにちは。maruru01です。 中身はそのままでもいいので、拡張子を「txt」に変更して、それをExcelのメニューの[ファイル]→[開く]で開くと、インポートウィザードが起動します。 その3/3ページでその数字の列のデータ形式を、文字列にして読み込みます。 ただし、操作が出来ないというのは、どういうことか分かりませんが、上記の方法もダメなら、VBAで処理を書いて、起動と同時に実行するようにしておくしかないと思います。 あとは、その数字データを「'000321」と「'」を先頭に付けておくかです。 ただし、Excel上で「'」を付けて保存しても「'」は残りません。

XxXxXxXxXx
質問者

お礼

自己解決しました。 ="0001", ="0003" と記述すれば、文字列として扱われる事がわかりました。 ありがとうございました。

XxXxXxXxXx
質問者

補足

解答ありがとうございます。 「操作できない」とは、する事ができないのではなく、してはならないの意味です。 アプリからExcelを起動して、自動印刷したいのです。 また、VBAは検討してみます。 シングルクォーテーションは、Excelを開いたときに表示されます。一旦クリックして編集モード(未編集でも)して抜ければ消えますが、そのままでは印刷できないです。

関連するQ&A