一つのセルに100字程度の文字を入れて、5・6行で全体が表示されるようにセルの設定で「折り返して全体を表示する」にチェックマークを入れています。
セルの高さが自動調節され、大体は全体が表示されるのですが、時々(結構?)セルからはみ出たり、ひどいときには一行丸まる表示されてなかったりします。
もちろん、そのときに気づいて手動セルの高さを調節すれば何も問題ないのですが、このようなセルがたくさんあるものですから一つ一つセルを読み返してチェックするのは非効率で困っています。
また、入力画面上では一つのセルに収まっていても、印刷プレビューでははみ出てたり、いちいちプレビューで確認していたら仕事にならないので困っています。
セルの高さの自動調整をかけたら、わざわざ文字の一部が表示されない高さに調節される場合があるので、これでは自動調節の意味もありません。
何かよい手立てはないでしょうか?いろんなフォントを試してみましたけど、これもダメでした。

このQ&Aに関連する最新のQ&A

A 回答 (5件)

NO4です。


追記の内容から見ますと、列は1列のみで良さそうですね。(多列でもかまいませんが)
私なら、使用する全ての行高さを入力する文字数の最大数のものが入る高さの固定します。
その上でフォントはプロポーショナルで無いものを選択します。
文字数のすくないものがどうのこうの、自動調整がどうのこうのいうより手っ取り早いものと
思いますが・・・

この回答への補足

おはよう御座います。
最初に書いているように、各セル内に5・6行程度です(中には1行のものから30行になるものもあります)が、中にはもっと長い文章も入ることもあり、最大の行数は毎日更新されるされるかもしれませんのであらかじめ最大のセルの高さにあらかじめ設定することは難しいです。データー量としても、1セル内の情報量が上記程度で、さらにセルの列が5列、セルの行数は毎日追加され最終的に数百~数千行に達します。ですから、データ量の少ないセルに対しては自動調整をしてなるべく高さを抑えたいと思っています。

補足日時:2005/04/20 06:28
    • good
    • 0

セルの中に書かなければいけないのでしょうか?


BOXを書いてBOX内に文字を書けば良いのではないでしょうか?
BOXの枠線はオートシェイブの書式設定で”枠無し”を指定すれば消えますので
セルの大きさを気にする必要は無いと思いますが...
    • good
    • 0
この回答へのお礼

ありがとう御座います。
ただ、今の作業はたくさんのセルに文字データを入力し、その後、並べ替えや文字列の操作を行うため、テキストボックスでは対応できません。
ちなみに、「テキストボックスの書式設定」→「配置」タブ→「自動調整」にチェックボックスを入れると基本的にはテキストボックスが文字列の長短に応じて自動的に調節されますが、ここでも入力画面と印刷とでズレが結構でます。これも、プリンタドライバとフォントの問題なんでしょうね。

お礼日時:2005/04/20 00:54

http://oshiete1.goo.ne.jp/kotaeru.php3?q=994662
を読んでみました。

調べてみましたが、どうも、セル内の行数が増えれば増えるほど、その狂いが生じてくるように思います。以前から、この問題は知っていましたが、仮に、VBAのコードでも、今だ定番のものがないように思います。それは、フォントサイズによっても、プリンタ・ドライバによっても変るからだと思うのです。一応、以下のようなマクロを作ってみましたので、できれば、Personal.xls (個人用マクロブック)の標準モジュールに登録して、ボタンなどで、マクロを登録して使ってみたらどうかと思います。

ただ、
 'フォントサイズによって変動する定数
 Const cFontSize As Double = 0.5
ここの部分は、なんともいえません。この値を増やせば、下側に隙間が多く増え、減らせば、当然、隙間がなくなります。今、フォント11で、180語、7行で試してみただけです。

Sub RowHight_Arrange()
 Dim Rng As Range
 Dim c As Range
 Dim WordCount As Long
 Dim StdHeight As Double
 Dim CellRows As Integer
 Set Rng = Selection 'マウスで、セルの範囲を選択
 StdHeight = StandardHeight
 'フォントサイズによって変動する定数
 Const cFontSize As Double = 0.5
 For Each c In Rng
  With c
   If .WrapText Then
    .Rows.AutoFit '高さを自動調整
    WordCount = LenB(StrConv(.Text, vbFromUnicode))
    CellRows = WordCount \ .ColumnWidth + 1
    .EntireRow.RowHeight = .RowHeight + _
    ((.Font.Size \ 2) * cFontSize) * CellRows
    .VerticalAlignment = xlVAlignTop
   End If
  End With
 Next c
End Sub
    • good
    • 0
この回答へのお礼

VBAは詳しく分かりませんが、確かにプリンタドライバやフォントサイズによって狂いが生じてきているのも確かですね。ありがとう御座います。

お礼日時:2005/04/20 00:43

印刷時に文字が欠ける件については、下記URLの#4でいくらかマシになります。


お試しを・・・。

Excelでセル内の文字が印刷時欠ける
http://oshiete1.goo.ne.jp/kotaeru.php3?q=994662
    • good
    • 0
この回答へのお礼

今の所完璧です。本当にありがとう御座います。
これ、裏技ですね!

お礼日時:2005/04/19 16:58

1.[CTRL]+[A]で全体選択


2.右クリック → セルの書式設定(F) をクリック
3.「配置」タグをクリック
4.「文字の制御」内の「折り返して全体を表示する(W)」をチェック

で、一気に設定できないでしょうか?

この回答への補足

設定そのものは出来ています。
設定済みのセルについて、文字が掛けてしまう状況です。

補足日時:2005/04/19 16:38
    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング