「Excelの限界に挑戦」シリーズ(嘘 :D
2003版『Excel の仕様および制限』
http://office.microsoft.com/ja-jp/excel/HP051992911041.aspx
>セルの内容の長さ (文字列)
>32,767 文字。セルに表示できるのは 1,024 文字まで。数式バーでは 32,767 文字すべての表示が可能。
2007版『Excel の仕様および制限』
http://office.microsoft.com/ja-jp/excel/HP100738491041.aspx
>セルが含むことができる合計文字数
>32,767 文字
..とあります。
『Excel のセルに表示されるのは 1,024 文字のみ』
http://support.microsoft.com/kb/211580/ja
..という記事もあります。
ちょっと整理してみた結論は、
■セル表示形式で[折り返して全体を表示する]にしなければ、シート上に表示されるのは1,024文字まで。
■[折り返して全体を表示する]場合、セル内表示可能文字数は、表示環境と入力内容に依存するので、一概に何文字まで、とは言えない。最大32,767文字の表示が可能。
kb/211580の現象確認手順通りに実行した場合、
test1実行後。
![test1実行後画像](https://blogimg.goo.ne.jp/user_image/10/b5/de886a83699d0ce8b73db24668990420.png)
大抵の方の環境では、記事内容どおりではなく、1,025文字以上表示されるのではないでしょうか。
[折り返して全体を表示する]設定では、1,024文字の制限はありません。
この設定を解除すると、シート上には1,024文字までしか表示されません。
右スクロールで確認できます。
test2実行後。
![test2実行後画像](https://blogimg.goo.ne.jp/user_image/5d/00/e24d7671be1f371fb7ce6d975e475408.png)
セルの列幅行高を拡げて、フォントサイズを小さくし、[折り返して全体を表示する]と、最大32,767文字の表示が可能な事が確認できます。
環境によるかもしれません&全然実用的じゃないですが。
test3実行後。
![test3実行後画像](https://blogimg.goo.ne.jp/user_image/6f/ef/1b230891785d44e26b62c02e71588b5b.png)
ちなみに[縮小して全体を表示する]と...
test4実行後。
![test4実行後画像](https://blogimg.goo.ne.jp/user_image/62/22/74b9f6d23acd503ffaa8a50128dd71d6.png)
1,024文字までですね。
#みぎっ X)
2003版『Excel の仕様および制限』
http://office.microsoft.com/ja-jp/excel/HP051992911041.aspx
>セルの内容の長さ (文字列)
>32,767 文字。セルに表示できるのは 1,024 文字まで。数式バーでは 32,767 文字すべての表示が可能。
2007版『Excel の仕様および制限』
http://office.microsoft.com/ja-jp/excel/HP100738491041.aspx
>セルが含むことができる合計文字数
>32,767 文字
..とあります。
『Excel のセルに表示されるのは 1,024 文字のみ』
http://support.microsoft.com/kb/211580/ja
..という記事もあります。
ちょっと整理してみた結論は、
■セル表示形式で[折り返して全体を表示する]にしなければ、シート上に表示されるのは1,024文字まで。
■[折り返して全体を表示する]場合、セル内表示可能文字数は、表示環境と入力内容に依存するので、一概に何文字まで、とは言えない。最大32,767文字の表示が可能。
kb/211580の現象確認手順通りに実行した場合、
Sub test1() With Workbooks.Add(xlWBATWorksheet).Sheets(1).Range("A1") .Formula = "=REPT(""w"",1024)&""xyz""" .WrapText = True .Columns.AutoFit End With End Sub
test1実行後。
![test1実行後画像](https://blogimg.goo.ne.jp/user_image/10/b5/de886a83699d0ce8b73db24668990420.png)
大抵の方の環境では、記事内容どおりではなく、1,025文字以上表示されるのではないでしょうか。
[折り返して全体を表示する]設定では、1,024文字の制限はありません。
この設定を解除すると、シート上には1,024文字までしか表示されません。
右スクロールで確認できます。
Sub test2() With Workbooks.Add(xlWBATWorksheet).Sheets(1).Range("A1") .Formula = "=REPT(""w"",1023)&""xyz""" .Offset(1).Value = .Value .Offset(2).Formula = "=RIGHT(A2,3)" .Offset(3).Formula = "=LEN(A2)" End With End Sub
test2実行後。
![test2実行後画像](https://blogimg.goo.ne.jp/user_image/5d/00/e24d7671be1f371fb7ce6d975e475408.png)
セルの列幅行高を拡げて、フォントサイズを小さくし、[折り返して全体を表示する]と、最大32,767文字の表示が可能な事が確認できます。
環境によるかもしれません&全然実用的じゃないですが。
Sub test3() With Workbooks.Add(xlWBATWorksheet).Sheets(1).Range("A1") '2003は適宜改行が必要(?) .Formula = "=" & ThisWorkbook.Name & "!uREPT(""."",32765)&""xyz""" '2007はノーマルでOK。 '.Formula = "=REPT(""."",32765)&""xyz""" .Columns.AutoFit .WrapText = True .RowHeight = 409.5 .Font.Name = "MS Pゴシック" .Font.Size = 7 .Offset(1).Formula = "=RIGHT(A1,3)" .Offset(2).Formula = "=LEN(A1)" End With ActiveWindow.Zoom = 75 End Sub '--------------------------------------------------------------------- Public Function uREPT(ByVal arg As String, ByVal cnt As Long) Const p As Long = 1148 Dim ret As String Dim i As Long ret = String(cnt, arg) For i = p To cnt Step p Mid(ret, i) = vbLf Next uREPT = ret End Function
test3実行後。
![test3実行後画像](https://blogimg.goo.ne.jp/user_image/6f/ef/1b230891785d44e26b62c02e71588b5b.png)
ちなみに[縮小して全体を表示する]と...
Sub test4() With Workbooks.Add(xlWBATWorksheet).Sheets(1).Range("A1:A2") .Item(1).Formula = "=REPT(""."",1024)&""ccc""" .Item(2).Formula = "=REPT(""."",1023)&""ccc""" .Columns.AutoFit .ShrinkToFit = True End With End Sub
test4実行後。
![test4実行後画像](https://blogimg.goo.ne.jp/user_image/62/22/74b9f6d23acd503ffaa8a50128dd71d6.png)
1,024文字までですね。
#みぎっ X)