- ベストアンサー
エクセルで作成したデータすべてを文字列として、テキストで保存するには?
” ”で囲まれたデータを一度エクセルで読み込んだ後で、テキスト保存すると” ”が消えています。 そのまま読み込むと0で始まる数列の0が消えてしまいます。 最初に読み込むときから” ”は付いていません。 すべてのセルのデータに” ”をつけたり、” ”で保存する方法や関数をご存知の方いらっしゃいませんか?
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは。KenKen_SP です。 Excel の CSV 入出力はフィールド区切り文字(”)をサポートしてません。 正確に言えば、セル内改行があるとそこだけ入りますが(--;) Access で読み込んでテキスト出力してみては? どうしても Excel でやりたいのであれば、マクロを書くしかないと思います。
その他の回答 (3)
- imogasi
- ベストアンサー率27% (4737/17069)
>関数をご存知の方 関数は読み込みや保存の方式まで指図できません。セルの値を整えることができるだけです。セルの値は文字列にしたうえで(書き出す際の)の質問ですから、関数に期待するのは原理的に無理です。 エクセルは数字のデータを読み込むと数値化するようなのでどうしようもないです。 VBAでプログラムをくむよりほかないでしょう。 1行全部を””で囲ったファイルを作り、A列に読み込んで、データ、区切り位置で列の文字列、数値、日付を指定する。 またはVBAでセルに値をセットするとき列の書式を文字列にする。 Sub test01() Range("A20").NumberFormat = "@" Range("a20") = "0023" End Sub はA20が「0023」になりました Sub test01() Range("a20") = "0023" End Sub は23になってしまいます。 Sub test01() Range("a20") = "0023" Range("a20").NumberFormat = "@" End Sub にしても「0023」になった。 また後からでも書式を=TEXT(E6,"0000")のようにして、先頭0つき文字列にすればよいのかもしれない。
お礼
ありがとうございましす。
- imogasi
- ベストアンサー率27% (4737/17069)
>関数をご存知の方 関数は読み込みや保存の方式まで指図できません。セルの値を整えることができるだけです。セルの値は文字列にしたうえで(書き出す際の)の質問ですから、関数に期待するのは原理的に無理です。 エクセルは数字のデータを読み込むと数値化するようなのでどうしようもないです。 VBAでプログラムをくむよりほかないでしょう。 1行全部を””で囲ったファイルを作り、A列に読み込んで、データ、区切り位置で列の文字列、数値、日付を指定する。 またはVBAでセルに値をセットするとき列の書式を文字列にする。 Sub test01() Range("A20").NumberFormat = "@" Range("a20") = "0023" End Sub はA20が「0023」になりました Sub test01() Range("a20") = "0023" End Sub は23になってしまいます。 Sub test01() Range("a20") = "0023" Range("a20").NumberFormat = "@" End Sub にしても「0023」になった。 また後からでも書式を=TEXT(E6,"0000")のようにして、先頭0つき文字列にすればよいのかもしれない。
- Wendy02
- ベストアンサー率57% (3570/6232)
EXCELから、テキスト保存と言っても、いくつかあります。CSV, TSV, SYLK など、どれなのか分かりません。 そのうち、CSV でしたら、以下の方法が可能だと思います。 メニューの[データ]-[外部データの取り込み]-[テキストファイルのインポート] で、 目的のテキストファイルを選んで、カンマ切りなど、適当な区切り文字を選んだら、後は、 カンマやタブなどの区切り文字…… で、 「次へ」 でフィールドが決まったら、 「次へ」 で、フィールドを文字列(T)にすれば、 001 002 となります。 ただ、他のTSVなど、区切り文字(, )が存在しないと、この方法はちょっと難しいかな?
お礼
ありがとうございます。
お礼
回答ありがとうございました。
補足
アクセスで使うデーターなのですが、アクセスの使い方がよくわからなくて・・・ その後アクセスの扱い方を覚えて、何とか目的は達せました。 皆様の回答でエクセルでは無理ということが判って、余計な回り道をしないですみました。