• ベストアンサー

Excel csvから開くと上限文字数が異なる

EXCEL 2002 2003 2007 で現象を確認しました。 EXCEL のセルに入る文字数上限は32767文字ですが、csvファイルをEXCELで開くと、上限はもっと低いようです。 調べた所、カンマ間に32759文字以上有ると改行されてしまうようです。 これはexcelのバグなのでしょうか?何か情報をお持ちの方教えて下さい。 マイクロソフトに電話したのですが、私のライセンスは無償サポートが終わっていて、4000円掛かると言われ辞めました。 よろしくお願いします。

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

  • ベストアンサー
  • end-u
  • ベストアンサー率79% (496/625)
回答No.3

>セルが含むことができる合計文字数 >32,767 文字 これはあくまでExcelワークシートにおける操作上の制限、 という事なのでしょうね。 『CSVテキストファイル』というExcelBookフォーマット以外のファイルを Excel上に展開する時には、また別の制限事項がある、 という事ではないでしょうか。 ざっと検索しただけですが、公式ドキュメントは見当たりません。 2002は持ってないのですが 97,2000,2003,2007,2010 で確認しました。 2007,2010は32,759文字まで読み込めます。 32,760文字以上が下のセルに読み込まれます。 97,2000,2003は31,737文字まで読み込めます。 31,738文字以上が下のセルに読み込まれます。 『31,737文字まで』というと http://support.microsoft.com/kb/161241 http://support.microsoft.com/kb/211965 こういう記事もあるんですが、古い情報なのか、 私の環境ではこの現象が再現できないです。 #関係ないかもしれませんし。 いずれにしてもですね、 表示上の制限が3万文字までは大丈夫だからといって 制限ぎりぎりまで使用するより、ある程度バッファ持たせておいたほうが 良いような気もします。 また、単純に表示させるだけなら 1セルに何万文字も格納するのはありかもしれませんが、 データとして操作する場合、操作内容によっては、 もっと低いレベルで制限ありますから留意しておいたほうが良いかもしれません。 http://support.microsoft.com/kb/418283

mot1177
質問者

お礼

ありがとうございました。

mot1177
質問者

補足

詳しく調べていただき、本当にありがとうございます。 97, 2000, 2010は環境がなく調べる事が出来ていませんでした。このバージョンについても教えて頂けたので、上限を2万文字ぐらいにして対応しようと考えております。 >ざっと検索しただけですが、公式ドキュメントは見当たりません。 私も一日探したのですが、この問題の情報も無いし、CSV読み込みについてのドキュメントも結局見つかりませんでした。 >こういう記事もあるんですが、古い情報なのか 見てみました。現象は全く同じですね。確かに関係あるような感じですが、ちょっと解りません。 とりあえず、貴重な情報ありがとうございました。上限でカンマをつけるにしても、適当に付けるわけにもいかなかったので何か情報が必要でした。仕様は結局わかりませんが、エクセルの色んな種類のバージョンの上限がわかったので、これで対応しようと思います。

その他の回答 (4)

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.5

#4 です。 私は飲み込みが悪いので、ご立腹させたようで、大変失礼しました。 人にはいろんな事情があることが、分からずにお書きしてしまいました。ご質問者さんは、「バグ」とお聞きになっていることでしたので、そういう発想をしてしまいました。解決とは違う趣を持っていたように思われました。 出来るなら、もう一度、「Microsoft Answers」の掲示板(日本語・英語)に、同じようにお聞きにっなってもよろしいかと思います。無料で、Microsoft の実際のサポート側の人が回答してくれるはずです。 現実的な問題だとしても、Excel自体の持っている仕様そのものの変更は利かないと思われます。 ただし、あくまでも、これは、CSVという範疇の話ですから、それ以外の解決方法はあるかとは思います。また、実際の文章が32,767文字内で納まることはないでしょうから、おそらく、それは、Excel自身では、スペックギリギリの問題は、難しいのではない、とも思われます。 これで、こちらは終わりにさせていただきます。

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.4

#1の回答者です。 >質問分にカンマ間に32759文字以上と書いてます。 私が、読み違えているということですね 32767-32759 の差つまり、8文字の余裕があるはずだということ?それが書いてなかったので、まったく見当違いな対応をしてしまったようです。 私は、実務上の質問かと思いましたので、今までの経験から、見えない切り分け文字が反応しているのだと考えてしまいました。でも、現実に使うことも出会うこともない問題を、解明しようとされているようです。基本的には、私は、そういうことはお付き合いしないことにしていますが、乗りかかった話ですから、少し、私の考えを書いておきます。 正直なところ、まさしく、MSに聞くような話ですね。どうせ、私たち外部の人間は、責任ある話にはなりませんが、MSの開発者さんたちが書いているブログがあったはずですから、そこで聞いてみたら、バグだとかなんとかいうよりも、ここらは辺りは、開発のことで、思ってみない「言い訳」を言ってくるので、面白いとは思います。もちろん、英語ですが。 MSの一般サポートなら、たぶん、CSVインポートする時に、メモリを使用しているので、その分が減りますっていうぐらいで答えてくるとは思います。それで、標準ファイルに変えて、不足分を入れてくださいっていうことになるのかもしれません。 実際問題として、Excelで渡す バッファの問題であるのだろうと思います。 #3のend-uさんのおっしゃる通り、2000, 2003では、31,737文字までですね。こちらは、その差は、1,030字、それより上位のバージョンでは、上記で書いた、8文字の差。インポート時に、その分が減らされているということだということよりも、バッファを割り引いているということで、CSVのインポート時は、公開されていませんが、それだけ分、消費しているということだろうと思います。

mot1177
質問者

補足

一体お1人で何を勝手な解釈を繰り返されているのでしょうか? 正直、必要の無い主観を長々と説明されても質問者にとっては苦痛でしかありません。 >8文字の余裕があるはずだということ? セル入力文字数上限 32767であるはずが、32758文字までしか入りませんと言ってます。 >でも、現実に使うことも出会うこともない問題を、解明しようとされているようです。基本的には、私は、そういうことはお付き合いしないことにしていますが これは、法務関係の業務において「「現実」」にある程度のシェアを持って使われているアプリの機能の一部に起こっている問題です。

noname#204879
noname#204879
回答No.2

参考になるかどうか疑問ですが、Excel 2002 のヘルプ「Excel の仕様および制限」によれば、 「セルの内容の長さ (文字列)」は「32,767 文字。セルに表示できるのは 1,024 文字まで。数式バーでは 32,767 文字すべての表示が可能」とあります。 その「32,767 文字まで」と貴方の「32759文字以上(=32758文字まで?)」の違いを問題にされているのでしょうか?

mot1177
質問者

補足

その通りです。 エクセルの仕様情報では、32767文字まで1つのセルに入れる事が出来るようですが、32759文字以上がカンマ間にあるcsvファイルを開くとおかしな表示になります。 データが分離され、かつ次行のセルに移されます。 エクセルから作ったcsvでもです。 また、内容も半角英字のみという単純な内容でもです。 32758文字までならこの現象は起きません。 ながーい文字列のデータをエクセルでひらけるようにするために、上限でカンマを入れたいのですが、その上限が仕様と異なるので問題にしております。

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.1

実際はどういうデータなのでしょうか? バグとかいう前に、それがCSVというのは文字通り、カンマ(,)で区切っているだけのもので、他のデータベースファイルで、いわゆる、原始データファイルというもので、シーケンシャルファイルと呼ばれたりするものです。まず、基本的にはExcelでは扱うことは出来ません。 >カンマ間に32759文字以上有ると改行されてしまうようです。 「32,767」というのは、Excel 2003までなら、おそらく、一区切り128文字ずつ入れたら、カンマ(,)の255個目を過ぎた時点で、改行が入るものだと思います。一行の累計が、32,767文字を越えることはないと思います。Excelは、本来、自分の出力したCSVファイルを扱えるだけで、他にも実際のデータベースなどの、CSVファイルらしきものは、Excelで扱えるものとは限らないこともあります。 私は、勤めてこの種の質問には読んで回答しているつもりですが、ここ(Office系を含む)の掲示板では、私の見る範囲では、この種の問題は、一度も解決したことはありません。 理由は推測の限りですが、バイナリコードが入っていることを質問者自身が気がつかないで、回答側には情報は与えず、ダメ出しされるだけのこともあります。 こちらも、解決策は示したり用意したりしていますが、ほとんど理解されないままになっているものも多いです。しかし、質問者の方も、ファイルをバイナリエディタで調べてくれているならともかく、単にダメ出しだけでは、相手の持っている、CSVらしきファイルを、神様のようにピタリと内容を当てて、解決することは出来ないのです。 私としても、一度ぐらい、上手く行きましたと聞きたいところですが、そうも行かないので、せめて適当なソフトウェアを探してください。CSVらしきものを扱う汎用のフリーソフトもあるようです。 http://www.asukaze.net/soft/cassava/ Cassava Editor http://www.simosimo.info/tool/index.shtml しもりんツール

mot1177
質問者

補足

この質問は解釈された事よりもっとずっとシンプルな内容です。 質問分にカンマ間に32759文字以上と書いてます。 セルに入る文字数を問題にしています。 今外で、データが提示できませんが、エクセルでひとつのセルにアルファベット何でも32767文字入れ、csv形式で保存し、ダブルクリックで開き直すだけで起きます。 データが分離され、改行が入るという現象が起きます。

関連するQ&A

  • CSVをExcel2007に取り込む方法について

    CSVファイルをエクセルに取り込みたいと思います。 CSVファイルはカンマでデータを区切っています。 ただ、カンマで区切られたデータの中に、改行コードが含まれている場合があります。 エクセルで、このCSVデータを読み込む場合、セルの中で2行目以降はとぎれてしまいます。 そこで、下記のサイトで、「引用符で囲まれた改行を無視」というエクセルの 機能があることを知りましたが、Excel2007にはこの機能はないのでしょうか? https://tsukaeru-excel.com/line-feed-code-csv-powerquery 最近のバージョンのExcelには標準でそなわっているようです。

  • CSVファイルをエクセルで扱うときのカンマの使い方について

    よろしくお願いいたします。 CSVファイルをエクセルで読み込んで、 編集後、またCSVファイルとして保存したいと思います。 CSVファイルをエクセルで読み込んだとき、 エクセルの中の各セルを編集しようとすると、 文字の前にカンマがついていますが、 これがあるのと、ないのでどのような違いが出ますでしょうか。 困っています。 どなたかよろしくお願いいたします。 エクセルで編集時に、カンマを削除してしまうと、 何が起こりますか。 意図したようにCSVとして保存できないのでしょうか。

  • エクセル セル内 文字数が多いと遅い 

    ウィンドウズxp で オフィス2000を使っています。エクセルでひとつのセルの中に、沢山の文字を入力しているのですが、文字数が増えると同時にとても遅くなります。文字入力自体も遅いですし、変換も遅いです。まるで、腹話術の時差のようです。 多いといってもそこまでではありません。せいぜい500文字から1000文字程度です。同じセルの中で何度も改行はしますが。 こうも遅いと仕事をする上でパフォーマンスが悪くて困っています。 ひとつのセルで沢山の文字を入力し、そして改行も行うとして、この以上に遅くなる現象を解決できる方法ってあるのでしょうか? 以上よろしくお願いいたします。

  • EXCELからCSVにすると余計なカンマがつきます

    こんにちは。 EXCELから固定テキストでデータの利用をするために ファイルをCSVにしました(件数約1万)。 その後テキストエディタで確認すると 最初の数千件は 1,2,3,4,5(改行) 6,7,8,9,0 のように目的とした文字列になってくれているのですが ある所から急に 1,2,3,4,5,(改行) 6,7,8,9,0, と、お尻にカンマがついてしまいます。 固定長で利用したいので、このカンマは余計なのですが、 カンマがつくならつくで、すべてのレコードについていれば 構いません。 なお、何回か試しているのですが、そのつどカンマが 現れる場所が違います。 時には最初カンマなし、途中カンマあり、また途中から カンマなしなどというファイルも作られます。 どちらかに統一できる方法をご存知の方はいらっしゃいます でしょうか。 お知恵を拝借したく存じます。 よろしくお願い致します。

  • Excelでcsvのフィールドが減る

    csvファイルをExcel2000のテキストファイルウィザードで開き、 再びcsvで保存した場合に、フィールド数(カンマの数)が減る という現象が起こりました。 再保存する際、空白セルが無視されるのかと考えましたが、 同ファイル内に、空白であってもフィールドが保存されている レコードもあります。 OSはWin2000 csvはテキストファイルウィザードで開けない為、 拡張子を一旦 txt に変えてから開いています。 原因、解決方法、何かヒントになりそうな事なら何でもよいので アドバイスよろしくお願いします。

  • CSVの定義

    普通のCSVの行末にはカンマはあるものなんですか? CSVのきちんとした定義があればそれも教えてください。 エクセルは持ってないんですが、エクセルだと行末のカンマは有りますか? ファイル末の改行の有無についても教えてください。

  • エクセル2010 CSVレイアウト崩れ

    「よくある質問」とはちょっと違うと思います。 あるCSVファイルを、そのままダブルクリックするとエクセルで開いてくれるPCがあります。 そのようにして開くとレイアウト崩れはありません。 で、同じCSVファイルをエクセルの「データ」→「外部データの取り込み」→「テキストファイル」で読み込むと、レイアウトが崩れてしまうのはなぜでしょうか。 なぜこのような質問をするのかというと、ちょっと説明が難しいのですが、なるべく簡潔に箇条書きにしてみます。 1 まず、このCSVファイルは自社で使っているオリジナルのシステムがCSV形式で吐き出すファイルであるという事実 2 このファイルは、ところどころ長文があり、セル内で改行が必要。なので長文の部分はダブルクォーテーションで改行を含め全体を囲んである。 3 従来はCSVファイルをそのままダブルクリックして開いて、内容をチェックする時、担当者がエクセル上でセル幅や高さをマウスで調節して文章を読んでいた。なお、その際にレイアウト崩れは発生したことがないので、もともとのファイルのCSV形式はちゃんと整って吐き出されているものと思われる。 4 しかし、いちいち手動でそんなことをするのは大変だろうと、私がマクロでCSVファイルを読み取り、自動的にセル内の文章を全部表示できるサイズに各行や列を自動調節できるようにしたいと考えた。 5 具体的には、まずマクロを記録したエクセルファイルを開き、そこから次のシートに当該のCSVファイルを読み取らせればよかろうと考えた。 6 ところが、シートにCSVファイルを読み込ませるために冒頭のような読み込み作業を行ったら、同じエクセルの同じバージョン、同じPCなのにも関わらず、レイアウトに崩れが生じた。 7 具体的にどの部分でレイアウト崩れが起きているのかをテキストエディターで調べると、やはり長文内の改行部分で次のセルに移動してしまっている。 8 しかし、改行部はダブルクォーテーション内に収まっており、(そうでなかったらCSVファイルを直接ダブルクリックしてエクセルを開いた際にもレイアウト崩れが生じていたはず)自分でも訳がわからなくなる。 9 つまり、CSVファイルをテキストデータとして読み込んだ際、設定で「カンマでセル移動、ダブルクォーテーションを「文字列の引用符」に指定しているにも関わらず、エクセルがダブルクォーテーションを無視しているとしか考えられない 10 なぜこのような違いが同じエクセルで生じるのかがわからない 11 いろいろ調べると、「ひょっとして改行コードの解釈の問題(例のLF+CRの問題)か?もしくはダブルクォーテーションのコードの解釈の違いがあるのか??」と思い当たる。 …と、以上のような経緯があったわけです。 それにしても不可解な話なので、どなたかエクセルに詳しい方の解説がいただけたらなあ…と思うのですが、いかがでしょうか。 もしくはどこかに、「一発でCSVファイルを正しく読み込んでくれるモジュールがあるよ」的なアドバイスをいただけると非常に助かります。 よろしくお願いいたします。長文失礼いたしました。

  • EXCELのセル内検索に文字数上限?

    EXCEL2003の各セルに多くの文字数を入力しているのですが、 検索を掛けても、該当の文字がセル内にあるにも関わらず 検出されないことがあります。(その文字がセル内の後半にあることが多いように思います。) 検索で検出される文字数はセル単位で 上限があったりするのでしょうか? 例えば、「apple」を検索する場合、 セルの初めから100文字以内にすべての文字が入っていれば検出されるが、 101文字以降にどれかの文字が掛かってしまっていると検出されない、等。 ご存知の方、回答をお願いします。

  • EXCELにcsv形式の外部データを取り込む際にカンマ区切りで取り込も

    EXCELにcsv形式の外部データを取り込む際にカンマ区切りで取り込もうとした場合、csvデータの同一セル内に改行データがあると、ずれて表示されてしまいます。 改行を取り除くのはclean関数があることは知っていますが、マクロを利用して、EXCELのデータ→外部データの取り込みの選択だけで取り込む方法はないでしょうか?ご教示ください。

  • エクセル セル 文字数設定

    エクセル2007を使用しています。1セルの中に設定した1行分の文字数を越えると自動的にAlt enter キーを押して改行することは可能でしょうか。1行20文字に設定していて,それをこしたら自動的に改行されるようにしたいのです。教えてください。

専門家に質問してみよう