- ベストアンサー
CSVで保存するとセルの書式が継続しません。
(質問) EXCELをCSV形式で保存した時に、"0000199"という文字列(数字?)のままにしたい場合、どのようにマクロに記述をしたらよいでしょうか。 ActiveWorkbook.SaveAs FileFormat:=xlCSV (状況) EXCELのセルに"0000199"という文字列(数字?)がはいっています。 |0000199 | セルのイメージ (セルの左側に数字がよっているということは、文字列の形式でしょうか?) これを、CSV形式にして保存すると、先頭の0000がとれてしまい、次のようになってしまいます。 | 199| (セルの左側に数字がよっているということは、数字の形式でしょうか?) 以上 よろしくお願い致します。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
> セルの左側に数字がよっているということは、文字列の形式でしょうか? 文字列の形式にしないと先頭に0はつけられません。 > これを、CSV形式にして保存すると、先頭の0000がとれてしまい、次のようになってしまいます。 CSVにしたからとれるのではなく、CSVファイルをエクセルで開くから、その瞬間にとれるのです。ためしに拡張子を.txtにかえてメモ帳で開いてみてください。
その他の回答 (1)
- x1va
- ベストアンサー率26% (802/3006)
テキストファイルウィザードを使いましょう。 http://hp.vector.co.jp/authors/VA014071/tips/txtwiz_1.html この方法では拡張子をtxtに変更すると書かれていますが、そんなことしなくても データ→外部データの取り込み→テキストファイルのインポート からウィザードが始まります。
補足
あっ!!!!!!よくわかりました。 Excel が勝手に(?)判断してデータ型を決めてしまうことが原因だったのですね。 ただ、.csvのファイルをEXCELで開こうとすると、ウィザードが出る前にCSVファイルが開いてしまうため、本ウィザードが利用できませんでした。 やり方がまずかったのでしょうか?
補足
なるほど! txtにして開いたら、先頭に0000がついていました。 そうすると、CSVファイルをエクセルで開く瞬間に"0000"が、とれないようにするためのマクロ記述方法はあるのでしょうか? それとも、 ANo.1 x1vaさんにご紹介頂いたテキストファイルウィザードのような方法しかないのでしょうか?