• ベストアンサー

Excelのセルに入る文字列に最大ってありますか

Excel 2000 を使っています。 長い可変長の文字列データをセル設定を「折り返して表示」にして入れていましたが、文字列が480バイトのデータを入れたところ、表示が ######### になって しまいました。折り返し表示の最大値ってあるんですか。教えて下さい。

  • kob
  • お礼率65% (79/120)

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

  • ベストアンサー
  • takasgy
  • ベストアンサー率42% (30/71)
回答No.5

書式で"文字列"ではなくて"標準"としていれば別段"#"のエラーが発生するわけでもないんですよね。 ちゃんと折り返して表示もできるし。(もちろん数値や通貨でも大丈夫なんですが) "文字列"にこだわるのであれば重大な問題ですが。 前ゼロ付(たとえば、00001の数値を標準の書式で入力してしまうと、ただの1になってしまうんで なんか、Excel2000のバグのような気がします。 制限にしてもなんか変やし。

kob
質問者

お礼

ありがとうございます。 全て解決しました。 はじめ標準でやったつもりでいたのですが、 どこかで文字列にこだわっていたんですね。 標準で試してもいなかったなんて! お恥ずかしい限りです。 ありがとうございました。

その他の回答 (4)

  • takasgy
  • ベストアンサー率42% (30/71)
回答No.4

たびたびですがすみません、現象が再現しました。 列の幅が255文字の制限に引っ掛かっているような感じです。 [ALT] + [Enter]で改行いれても同様でした。 ヘルプの制限にありました、すんませんできたと思ったのは勘違いですわ...トホホ

kob
質問者

お礼

ありがとうございました。 でも、つまり「折り返して全体を表示する」ことができるのも セル幅255文字限界内のみということですか..... 256文字以上のデータって、世の中には無いんでしょうか? 解決策はないんでしょうか....

  • takasgy
  • ベストアンサー率42% (30/71)
回答No.3

出力されている文字列がどのようなものなのかわからないので判断が難しいのですが、私が使用している環境では、8000文字程度入力していても大丈夫です。 入力される文字列に問題はないでしょうか? Excel2000のヘルプで"#"を検索すると、"#"が表示されるエラーパターンがわかります。 セルの書式属性と入力される文字列との関係は適切でしょうか? (日付や数値型など) 日付型の書式に変な数値を入力した場合はセル幅に関係なく"#"が表示されてしまいますが。 テストで使用した環境はWindowsnt 4.0 + Office2000(SP1)です。 サービスパックのバク対応には、質問されている件については記述ありませんでした。

kob
質問者

補足

う~ん... 信じられません! 入力した文字列は、先には漢字文字列でしたが、テストでは半角数字文字列(00000000001111111111222....)を並べたものなんです。 「表示形式」はもちろん「文字列」 「配置」は横「標準」、縦「下詰め」 .....まあ、変えても同じだけど 「文字の制御」は、「折り返して全体を表示」のみチェック 環境は、 takasgy さんと同じ WindowsNT4.0 + Office2000 なんです。 なぜ、1セル内に入れて表示できるんですか? 何が違うんでしょうか?

  • takasgy
  • ベストアンサー率42% (30/71)
回答No.2

Excel2000のヘルプで”制限”と入力して検索してみてください。 セルの長さ制限は以下のような記述です。 セルの内容の長さ (文字列) 32,767 文字。 セルに表示できるのは 1,024 文字まで。数式バーでは 32,767 文字すべての表示が可能。 ただ、#####と表示される場合は、表示領域(セルの幅)が小さい時です。

kob
質問者

補足

takasgy さん、bupu4u さん、ありがとうございます。 私の質問の書き方が要領を得ていなかったんだと思いますが、 セルの書式設定で「文字の制御」の「折り返して全体を表示する」を チェックした時のことなんです。 セルの幅が小さくても、255バイト(文字?)までは「折り返して全体を表示」 してくれました。256バイト(文字?)以上は 、#####と表示されちゃうんです。(実験してしまいました。) これが、「折り返して全体を表示」の限界なんですね。 もう少し、詳細にこのこと知ってたら教えて下さい。

noname#16572
noname#16572
回答No.1

excel97で46Kバイトのテキストデータを1セルに入れたけど問題なく表示できました. 可変長の場合と言うのはよくわかりませんが、セル幅、セル高さが不足しているのではないでしょうか?足らないと初めの方しか表示されませんけど。

kob
質問者

お礼

bupu4u さん、ごめんなさい。 takasgy さんの補足にまとめて書いちゃいました。

関連するQ&A

  • セル内の文字列操作について

    Excelでセル内の文字列を操作したいのですが、Excelの標準の関数では出来そうにないので、どなたかお力をお貸しください。 1つのセル内に、文字列や数値が複数入っています。 (例) Excel 12 りんご Word 11 このセルを調べて、数値のデータが複数入っている場合、最大値のみを表示させ、残りの数値データは削除したいのです。 (結果) Excel 12 りんご Word この処理の対象はセル内の数値データであって文字列には作用させず、結果的には文字列はそのまま表示させたいのです。 Excelの文字列に関する関数を調べてみたのですが、該当するものがなく、VBAを使用しなくてはならないのかもしれません。処理するデータが大量なため、VBAマクロなどで処理できれば大変ありがたいのですが、どなたかご存知の方がいらっしゃいましたら、ご教授くださいませ。どうぞよろしくお願いいたします。

  • エクセルの文字列検索でお知恵をお貸し下さい。

    エクセルのA1~A5セルに次のようなデータがあるとします。 1-01-0 1-01-1 2-01-11 10-111-0 100-1111-111 B1~B5セルに、これらのデータから以下のようなデータを検索・抽出する関数が分からずに困っています。 1-01 1-01 2-01 10-111 100-1111 つまり各セルの右側の"-"(ハイフン)より左にある、可変な全文字列をB列に抽出したいのです。 どうか宜しくお願いいたします。

  • Excelの「’」とセルの書式設定(文字列)の違い

    こんばんわ。 Excelの文字列表示について、教えてください。 数字を入力する際に、先頭に「'」を入力すると 文字列として入力することが出来ますが、 数字が入っているセルのセルの書式設定から 「文字列」に表示形式を変更することとの 違いはなんなんでしょうか? やり方は違うけれど、結果は同じということでしょうか? 「'」を入力すると、データが文字そのものに変わり、 表示形式を変更すると、見た目だけ(左揃えになるなど) 文字列のように見えるだけで、データは 数字のままということなんでしょうか?? また、文字列として入力された数字を Value関数で数値に変換してしまうのと セルの書式設定で「数値」に変更するというものも 同じように、違いが良く分かりません。。。 もう、頭の中が「??」だらけです。 違いを教えていただけたら・・・と思います。 どうぞよろしくお願いいたします<m(__)m>

  • エクセルで時間セルをVBで文字列として取り込むには

    エクセルです。 時間セルがあって、エクセル上での表示では 12:30:15 という風に表示するようにセルの書式設定でしているのですが、そのセルを VBで取り出そうとして、 A = Cells( 1,1 ) とかってすると、Aには、0.66656 とかって数字が入ってきてしまいます。 Aは文字列として、DIM A as String とかってしているのですけどね これをちゃんとAに、12:30:15 という形の文字列として入れるのにはどうしたらいいのでしょか

  • 一つのセルに表示できる最大文字数は1024文字ですよね?

    エクセル2003です。 一つのセル(「A1」など)に表示できる最大文字数は何文字ですか? ネットで検索した仕様で 「セル内の文字列の長さ 32767文字。」 「セルに表示できるのは1024文字まで。」 「数式バーでは32767文字すべて表示。 」 と書いてあったのですが 今のところ1900文字表示できます。 (漢字、ひらがな、カタカナ、改行ありです) 何かの間違いでしょうか?

  • エクセルで文字列の計算をしたいのですが。

    エクセルで文字列の計算をしたいのですが。 セルの表示は文字列ですが、実際のデータは数字(だけ)が入っています。 これを計算する事は可能でしょうか?。 例えば A1セル:00001 と入っていて B1セルには、A1セル+1=00002 とさせたいのです。 よろしくお願いいたします。

  • セルの書式が標準なのに文字列にできるのはなぜ?

    会社のシステムで吐き出したデータですが セルの書式設定が標準なのに文字列となっています。 マクロを利用して、あるセルの値を別セルへ転記すると、 数字は数値に変換され、先頭の0は消え、桁数が多いと指数表示になってしまいます。 会社のシステムが吐き出したエクセルはセルの書式が標準なのに 中の数字が文字列でいられるのが疑問です。 会社のシステムの吐き出したデータは Microsoft Excel 2.1ワークシートで 全てのセルの書式設定は「標準」です。 で例えば 12345678901234 は 12345678901234 と表示されていて 「数値が文字列として保存されています」 となっています。(先頭に ' は入っていません) 0101という値のセルでも 表示は0101ですが 「数値が文字列として保存されています」 となっています。(先頭に ' は入っていません) それらのセルの値をマクロとかで別セルに転記すると 転記先では1.23457E+13 と表示されてしまいます。 (0101は101になります。) まっさらなエクセルに自分で手入力すると ・セルの書式設定が標準だと 12345678901234 ↓ 1.23457E+13になります。 ・セルの書式設定が数値だと 12345678901234 ↓ 12345678901234 ・セルの書式設定が文字列だと 12345678901234 ↓ 12345678901234 (ただし 数値が文字列と保存されています と注釈有) なのに会社のシステムの吐き出しデータは セルの書式設定が標準なのにもかかわらず 12345678901234 ↓ 12345678901234 (ただし 数値が文字列と保存されています と注釈有) となっています。 手入力で書式設定が標準の状態でセルに12345678901234 と表示させるには先頭に ' をつける方法しか知りませんが ' が無いのに表示されています。 でもこの該当セルをマクロで別セル(書式設定:標準)に転記すると 1.23457E+13 となります。 またシステムが吐き出したエクセルの同じシート内に 以下のマクロで転記すると ↓ Sub 転記() 行 = 2 Do If Cells(行, 6).Value = "" Then Exit Do If Cells(行, 6).Value >= 10 Then Cells(行, 7).Value = Range("A2") Else Cells(行, 7).Value = Range("A3") End If 行 = 行 + 1 Loop End Sub ↓ このマクロだと A列~F列が書式設定が標準なのに文字列として表示されているのですが 転記先のG列が書式設定が標準であっても 12345678901234 (数値が文字列と保存されています と注釈有) と同じ状態のまま転記できます。 新しいBOOKのシート2に 会社の吐き出しデータをシートコピーした後、 (セルの書式設定:標準だが文字列で表示されている) そのBOOKに登録されているマクロで シート2のセルからシート1のセル(書式設定:標準)に転記すると 数字は数値に変換され、先頭の0は消え、桁数が多いと指数表示 となってしまいます。 ちょっと混乱しています。 理屈等教えていただければと思います。お願いします。

  • Excelで文字列セルにて条件式を設定するには

    Excelにて、書式設定が「文字列」のセルに以下の条件を設定するにはどうすればよいでしょうか。 どなたか教えてください。 Excelのマクロ機能を使用して、CSVデータを取り込み、シート上の所定のセルにCSVデータを出力させている既存システムがあるのですが、出力の際に次のような条件を追加したいと考えています。 なお、マクロの修正にて対応できればいいのですが、システムの設定上、マクロをいじることができないため、なんとかシート上で条件式にて対応したいと考えています。 列Bのセルに、隣の列Aの値をみて出力する内容を変えるための条件式を設定したい。 なお、列A,Bともに条件を設定する対象は複数行を想定。ともに書式は文字列。 例) ・A1の値が空欄でないとき、B1には取り込んだCSVデータの値を表示。 ・A2の値が空欄のとき、B2には固定で”あああ”と表示(現行ではA2のデータ元CSVがスペースの場合、B2のデータ元も必ずスペース。よって、A2、B2ともに空欄になっている)。 とりあえず、列BにIF文の条件式を設定してみたのですが、文字列セルのため、設定した条件がそのまま表示されてしまいます。 なにかよい方法はないでしょうか。よろしくお願いします。

  • エクセル2010 同じ文字を探し 関連セルを抜出し

    エクセル2010を使っています。 O1セルに入った文字と同じ文字を、A列から検索しM列まであるその行データをPセルの上から順に表示させるにはどうしたら良いでしょうか? わかるかた よろしくお願いいたします。

  • Excelで1つのセルに入れた複数行の長い文字列をセルの高さを変えずに表示したい

    こんにちは。 Excelについての質問です。 お分かりになる方がらっしゃいましたら教えていただけると幸いです。 Excelのシートに、何行かにわたる長い文字列をコピーしたものを 1つのセルに貼り付けて、全て表示させたいのです。 その時、シートの幅や高さは変えずに、 セル内で「Alt+Enter」で改行されてその高さに収まらない文字列は、 そのまま直下の空いているセルに表示させたいのですが、これは可能でしょうか。 「折り返して全体を表示する」はオフの状態です。 この設定で1行だけの文字列だと幅以上の文字列は自然に横の空白のセルに流れてくれますよね? これを、「Alt+Enter」の複数行ver.でやりたいのですが、 このようなことは可能なのでしょうか。 質問が分かりにくくて申し訳ありません。 他にも、いい方法をご存知でしたらアドバイスをお願いいたします。

専門家に質問してみよう