- ベストアンサー
【エクセル】改行無しテキストファイルの読み込み方法
改行無しの連続的なデータ(データ間はカンマで区切られています)をエクセルに読み込ませたいのですが、256個までしかデータを読み込みません。256個目のデータの後に『改行コード』が無いと、それ以上の読み込みは不可能でしょうか?よろしくお願い致します。
- みんなの回答 (7)
- 専門家の回答
質問者が選んだベストアンサー
1. 単純に改行コードが CRLF ではないケース Windows の既定の改行コードは CRLF ですが、データを出力 したシステムが Unix 系だと LF、マックだと CR になります。 メモ帳で上記のような改行コードが既定と異なるファイルを 開いた場合、一見して改行がないように見えるかもしれません。 ただし、改行コードに当たる部分が■のように文字化けした よう表示されますから、データ全体を眺めてみると手がかりに なるかもしれません。 この場合、Terapad などのエディタで改行コードを CRLF に 指定して保存し直すなどの方法がとれそうです。 2. 複数列のデータ構造ではないケース 単に1系列のデータ(Excel で言えば 1列)のデータが延々と カンマで区切られているだけなのでは? # 改行コードをつけないデータ出力は普通にあります # 3. とも関連しますが、レコードの区切りは改行コード # と限られているわけではありません。 この場合もよほどイレギュラーなケースでなければ、Terapad などのエディタでカンマを改行コードに置換してしまえば 済む気がします。 3. レコード区切りが NULL など レコード区切りに NULL を使っている場合があります。この 場合は、Terapad などでファイルを開いてみると NULL を 含んでいると警告がでます。 対応策としては VBA で読み込むとか。
その他の回答 (6)
- himajin100000
- ベストアンサー率54% (1660/3060)
データにカンマを含む文字列があるケースもあるので一括置換って危ない気がするんだけどなあ "abc","d,ef",3 #まぁそれが >よほどイレギュラーなケース なんだろうと思うけど
- MackyNo1
- ベストアンサー率53% (1521/2850)
改行コードを含んでいないテキストファイルをエクセルに縦方向に1列に読み込ませたいなら、テキストファイルをワードで開いて、Ctrl+Hで置換ダイアログを出し、「オプション」ボタンをクリックし「ワイルドカードを使用する」にチェックを入れ、検索する文字列に「,」置換後の文字列に「^13」と入力し「すべて置換」してから、そのデータをCrtl+Aですべて選択後、Ctrl+Cでコピーして、エクセルでCtrl+Vで貼り付けてみて下さい。
- Wendy02
- ベストアンサー率57% (3570/6232)
こんにちは。 それは、どういうファイルかであって、何行とか何列というものではないと思います。 CSV ファイルに似ても、そうでないものはいくつもあります。 >256個目のデータの後に『改行コード』が無いと、それ以上の読み込みは不可能でしょうか? 改行コードがないものは、まず、テキストファイルとは思わないほうがよいと思います。テキストファイルに見えるだけです。 だからコンマ区切りとか単純には考えられません。こういう質問では、その区切り文字(信号)が何かということを、質問者さん側では特定できなくて、迷宮入りになることが多いのです。場合によっては、実際は、バイナリで区切られた、ランダムアクセスファイルということもあります。メモ帳などでみても、それは分かりません。原始データファイルでは、シーケンシャルファイルというものもあります。 どういう種類のファイル構造になっているかということだと思います。 せめて、何で出力されたものか、ぐらいは分からないと難しいと思います。 例えでいうなら、まんじゅうを出されても、それが必ずしも、あんこが入っているとは限らない、ということです。とはいえ、私は、掲示板の回答者として書いてきてから、まだ、一度も成功したことはありません。ランダム・アクセスファイルとかいう条件が与えられて、初めて、そのデータ内容をExcelにインポートできるわけです。
- enunokokoro
- ベストアンサー率74% (3543/4732)
Wordがあるのなら、連続したデータを読み込んで、メニューの[罫線]→ [変換]→[文字列を表に変換する]→[文字列の区切り]で[カンマ]を指定 して、[列数]でスピンボタンで減らすと、最大列が[ 63 ]まで指定する ことができますので[OK]します。 この表をコピーしてExcelに貼り付けるなどしてはいかが。 列数を増やしたいならこの方法では駄目ですが、最大列が[ 63 ]までで 問題ないなら、試すのもありだと思います。
- MRT1452
- ベストアンサー率42% (1391/3293)
Excelの基本的仕様上、256列以上の列は存在できません。 ※ちなみに行は65535行以上は存在できません。 そのため、そういったデータをExcelに取り込むには、データ自体を改修するか、 ファイルを開くに拠る読込ではなく、VBAを組んで読込処理を作るかの二択かと。
- himajin100000
- ベストアンサー率54% (1660/3060)
はい。Excel 2003までは256列までしかサポートしませんからね。 http://office.microsoft.com/en-us/excel/hp051992911033.aspx Excel 2007では16384列まであるようです。 手元に2007はありませんので2010のBetaの結果ですが、そちらは読み込みに成功しています。 #マクロと複数のシート使って読み込もうとかそこまで行くとアレだしなあ http://support.microsoft.com/kb/272729/ja #OOoも256列だったとおもう。go-ooは16384列だったと思う。 ##データそのまんまじゃ読めないからデータを変更してでも読みたければ 何かのプログラムを使わざるを得ないでしょうね。