エクセルについて教えて下さい。表を作成し、セルに文章を入力しますが、文章が長文などで文章がセルの横幅に収まりきらない場合、「セルの書式設定」→「折り返して全体を表示する」あるいは「縮小して全体を表示する」を選択して問題を解消できます。ここからが教えて頂きたいことなのですが、「折り返して全体を表示する」を選択してセル中の文章が2行に渡ったとします。すると、1行目の文章の上部及び2行目の文章の下部がセルに収まりきらず、切れてしまうことがありますね。この文字がちゃんと表示されて印刷されるように行幅を(行幅が文字の収まりにぴったりと)自動で設定できる方法はありますでしょうか。文字の表示サイズぴったりに手動で行幅を設定するのであれば、大変な手間がかかります。0.01ピクセル単位で設定をして都度アウトプットしちゃんと印刷されているか見なくてはなりません。何か簡単な設定方法などあれば教えて下さい。お願いします。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2006/08/02 10:27:32
  • 終了:2006/08/02 12:07:13

ベストアンサー

id:antipattern No.6

antipattern回答回数125ベストアンサー獲得回数122006/08/02 11:38:34

ポイント30pt

二回目の回答になります。

マクロを使う方法しか考え付きませんでしたが,以下を修正して実行すれば設定できると思います。

Public Sub HeightFit()

Dim minHeight As Integer

Dim fitRangeStart As Integer

Dim fitRangeEnd As Integer

'====== 以下を適宜変えてください ======

minHeight = 15 ' 全体に設定する行高

fitRangeStart = 1 ' 行の高さを調整する範囲

fitRangeEnd = 6 ' 行の高さを調整する範囲

'=========== ここまで ===============

' 行の高さを自動調整

Range(fitRangeStart & ":" & fitRangeEnd).Select

Selection.EntireRow.AutoFit

Dim i As Integer

For i = fitRangeStart To fitRangeEnd Step 1

Rows(i & ":" & i).Select

If Selection.Height < minHeight Then

Selection.RowHeight = minHeight

Else

' non operation

End If

Next

End Sub

あと過去に類似した質問があるみたいです。

http://q.hatena.ne.jp/1153399625

id:aceK

ありがとうございます。ご親切感謝申し上げます。

2006/08/02 12:02:12

その他の回答(9件)

id:ootatmt No.1

ootatmt回答回数1307ベストアンサー獲得回数652006/08/02 10:37:28

ポイント16pt

http://www.gon-net.jp/text/excel/nyumon/2/2.htm

行番号の間の境界線をダブルクリックすれば自動で調整されますよ。

そういう意味ではないかな?

id:aceK

なるほど、ありがとうございます!ではさらに教えて頂きたいのですが。→表全体の行幅を設定します(表のどの行も均一な行幅)。その設定が、1行の文章は表示されるが「2行に渡る文章だと一部表示されない大きさの行幅」だったとしたら、表の行幅の設定を変更するたびに、2行の文章のセルに対し上記の作業をいちいちしなくてはなりません。行の幅をいかに設定しようとも、文字がセルの縦幅ぴったりに表示するようにはどうしたらいいでしょうか?

2006/08/02 10:51:34
id:kumaimizuki No.2

くまいみずき回答回数614ベストアンサー獲得回数312006/08/02 10:38:05

ポイント10pt

http://q.hatena.ne.jp/list


例えばA1セルに長文が入っていて、「折り返して~」を選び2行になったとします。

この場合、列幅を印刷に入るよう合わせるには


1)左側の縦に並んでいる数字の「1」と「2」の間にカーソルを持っていく

2)上下の矢印になったところでダブルクリック


とやれば、印刷されるよう行幅を設定することが出来ます。

(蛇足ですが、列幅も同じようにやれば、簡単に設定できます)

id:aceK

なるほど、ありがとうございます!ではさらに教えて頂きたいのですが。→表全体の行幅を設定します(表のどの行も均一な行幅)。その設定が、1行の文章は表示されるが「2行に渡る文章だと一部表示されない大きさの行幅」だったとしたら、表の行幅の設定を変更するたびに、2行の文章のセルに対し上記の作業をいちいちしなくてはなりません。行の幅をいかに設定しようとも、文字がセルの縦幅ぴったりに表示するようにはどうしたらいいでしょうか?

2006/08/02 10:52:33
id:tezcello No.3

tezcello回答回数460ベストアンサー獲得回数692006/08/02 10:44:15

ポイント9pt

http://q.hatena.ne.jp/1154482051

ダミーです。


行高さ、または列幅を手動で変える時にその境界線をドラッグしていると思いますけど、

ダブルクリックすると対象の行(列)内が全部表示できるサイズに出来ますが、これではダメですか?

VBAを使ってというのなら、

http://www.geocities.co.jp/Technopolis/2082/Soft/Excel_b.htm...

こんなのを見つけました。

(VBAはよく分りませんので説明が出来ませんが)

id:aceK

なるほど、ありがとうございます!ではさらに教えて頂きたいのですが。→表全体の行幅を設定します(表のどの行も均一な行幅)。その設定が、1行の文章は表示されるが「2行に渡る文章だと一部表示されない大きさの行幅」だったとしたら、表の行幅の設定を変更するたびに、2行の文章のセルに対し上記の作業をいちいちしなくてはなりません。行の幅をいかに設定しようとも、文字がセルの縦幅ぴったりに表示するようにはどうしたらいいでしょうか?

2006/08/02 10:53:18
id:antipattern No.4

antipattern回答回数125ベストアンサー獲得回数122006/08/02 10:47:06

ポイント8pt

Excelの場合,行・列ともに見出しの間のところをダブルクリックすればちょうど良い幅・高さに設定されます。

(分かりにくいですね・・・汗)

例えばA列の列幅をちょうど良い幅にしようと思ったら,「A」と書いてあるところと「B」と書いてあるところをの間をダブルクリックすればOKです。

ちょうどマウスカーソルが左右が矢印になっている十字型になるところです。

ただしこの方法だと,セルの結合をしている場合には適切な高さにならないことがあります。

高さの場合は設定したい範囲を選択してメニューの「書式」→「行」→「自動調整」でも可能です。

http://www.relief.jp/itnote/archives/000787.php

id:aceK

なるほど、ありがとうございます!ではさらに教えて頂きたいのですが。→表全体の行幅を設定します(表のどの行も均一な行幅)。その設定が、1行の文章は表示されるが「2行に渡る文章だと一部表示されない大きさの行幅」だったとしたら、表の行幅の設定を変更するたびに、2行の文章のセルに対し上記の作業をいちいちしなくてはなりません。行の幅をいかに設定しようとも、文字がセルの縦幅ぴったりに表示するようにはどうしたらいいでしょうか?

2006/08/02 10:53:42
id:uni90210 No.5

uni90210回答回数301ベストアンサー獲得回数52006/08/02 10:54:21

ポイント7pt

行間の自動調整機能を使います。

表示したいセルの行を選択して、行番号間の境界線辺りでカーソルが黒色の矢印に変化したところで、ダブルクリックすると、行間が自動的に調整されます。

http://uni90210.cocolog-nifty.com/

id:aceK

なるほど、ありがとうございます!ではさらに教えて頂きたいのですが。→表全体の行幅を設定します(表のどの行も均一な行幅)。その設定が、1行の文章は表示されるが「2行に渡る文章だと一部表示されない大きさの行幅」だったとしたら、表の行幅の設定を変更するたびに、2行の文章のセルに対し上記の作業をいちいちしなくてはなりません。行の幅をいかに設定しようとも、文字がセルの縦幅ぴったりに表示するようにはどうしたらいいでしょうか?

2006/08/02 10:58:06
id:antipattern No.6

antipattern回答回数125ベストアンサー獲得回数122006/08/02 11:38:34ここでベストアンサー

ポイント30pt

二回目の回答になります。

マクロを使う方法しか考え付きませんでしたが,以下を修正して実行すれば設定できると思います。

Public Sub HeightFit()

Dim minHeight As Integer

Dim fitRangeStart As Integer

Dim fitRangeEnd As Integer

'====== 以下を適宜変えてください ======

minHeight = 15 ' 全体に設定する行高

fitRangeStart = 1 ' 行の高さを調整する範囲

fitRangeEnd = 6 ' 行の高さを調整する範囲

'=========== ここまで ===============

' 行の高さを自動調整

Range(fitRangeStart & ":" & fitRangeEnd).Select

Selection.EntireRow.AutoFit

Dim i As Integer

For i = fitRangeStart To fitRangeEnd Step 1

Rows(i & ":" & i).Select

If Selection.Height < minHeight Then

Selection.RowHeight = minHeight

Else

' non operation

End If

Next

End Sub

あと過去に類似した質問があるみたいです。

http://q.hatena.ne.jp/1153399625

id:aceK

ありがとうございます。ご親切感謝申し上げます。

2006/08/02 12:02:12
id:llusall No.7

llusall回答回数505ベストアンサー獲得回数612006/08/02 11:31:27

ポイント40pt

1.一番左上の灰色のセルをクリックして、セル全体を選択します。

  (A1セルの左上の灰色部分)


2.メニューから[書式]-[行]-[自動調整]を押下します。


※すべての行が自動調整されます。


http://www.yahoo.co.jp ダミー

id:aceK

おお、できました!ありがとうございます!

2006/08/02 12:03:53

質問者が未読の回答一覧

 回答者回答受取ベストアンサー回答時間
1 RandD 167 149 5 2006-08-02 11:14:51
2 ota2244 77 69 4 2006-08-02 11:46:24
3 Hieronymus1450 13 11 0 2006-08-02 12:01:19

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません