Excelで、セル内の長文を複数行表示とするために「折り返して全体を表示する」の設定後、行の高さの自動調整をしても、印刷結果が思うようにならない時があります。 画面内では全ての文字が表示されているのに、印刷すると次のように「文章の下端が切れている」「最後の行が全て表示されない」など、印刷結果にあわせた行の高さの自動調整が充分にされず狭い。
コメント一覧など、長文の入った文字列が多くある一覧表では、印刷後に「文字が切れていないかのチェック」が必要となり、都度手作業での修正が手間です。
その解決方法として「ページレイアウトの表示」にして自動調整すれば良いという方法もありますが、それでもうまくいかないケースがあり原因と対策を整理してみました。
先に結論としては、標準機能で解決する場合は以下2つが良さそうです。
・標準フォントを、使用しているフォントにあわせる
・必要であれば「ページレイアウトの表示」で、再調整する
なお、標準機能で解決できない場合は、VBAで、印刷時に文字が切れないように行高さ設定の検討。
内容:
そもそも、印刷時にセル内の文字末尾が切れる原因
印刷時にセル内の文字末尾が切れるケースは、該当のExcel文書で実際に使用しているフォント(サイズ含む)と、標準のフォントが違うときに発生しやすい。
要は、Excel は印刷時は文書で使用しているフォントではなく、設定されている標準フォントで行の高さや列幅を計算するとのことで、これが理由。
Excel は印刷を行うとき、標準フォントを使用して行の高さや列幅を計算します。ただし、プリンターで利用できないフォントが標準フォントに設定されている場合は、標準フォントの代わりに既定のフォントを使用して計算を行います。
出典: [Excel で印刷時のレイアウトが意図したとおりに印刷されない(Microsoft サポート)]より
現在、Excelの既定では、ブックで使用される標準のフォントは「游ゴシック」で、フォントサイズは「11」ポイント。 そして、この設定のまま使用していることが多く、実際に使用しているフォントと違う時に文字末尾が途切れる。
なので、まず基本は印刷がズレている該当のファイルで使用する標準フォントを変更する。
なお、「MS Pゴシック」など「P」の付くフォントはプロポーショナルフォントといって、それぞれの文字毎に文字幅が違うので、印刷時にずれやすい。
どうしても「MS Pゴシック」などを使いたい場合には、標準フォントの変更後に「ページレイアウトの表示」にして自動調整(行の高さを変更する部分をダブルクリック)をした方が良さそう。
これで、多少の余分な余白ができる時もあるが、文字末尾が切れるよりは許容できるアウトプットになります。
試してみたこと
標準フォント 「遊ゴシック 11ポイント」の場合
Excelの画面上イメージ
標準フォント 「遊ゴシック 11ポイント」の設定は変更せず、画面上のフォントを8ポイントから11ポイントで設定し、それぞれ文字列の末尾を赤字としています。
画面上では文字列がきれいに収まっています。
印刷結果
フォントを8ポイントにしたサンプルのみ文字列が切れていて、9ポイントから11ポイントまでは収まっていた。 標準フォントと同じ11ポイント以外は、運よく収まったという印象。
標準フォント 「遊ゴシック 8ポイント」の場合
Excelの画面上イメージ
標準フォント 「遊ゴシック 8ポイント」に設定を変更。画面上のフォントを8ポイントから11ポイントで設定し、それぞれ文字列の末尾を赤字としています。
印刷結果
フォントを8ポイントにしたサンプルは適切に表示。9ポイントと10ポイントは、文字列が途中で切れていた。
なお、冒頭に記載のとおり、「MS Pゴシック」など、「P」の付くフォントは標準フォントの変更後に「ページレイアウトの表示」にして自動調整(行の高さを変更する部分をダブルクリック)しないとうまく表示されないケースがあった。
(参考)標準フォントの変更手順
「セルのスタイル」→「標準」を右クリック
「変更」をクリック
「書式設定」をクリック
「フォント」を実際に使用しているフォントとあわせる
以上の方法で、画面と印刷物で完全な一致は難しいですが、概ねセル内の文字末尾が切れる問題は解消できます。
ただし、複数のフォントを使っているケースなどでは、どれを標準にするかなどの問題もあるので、多少の画面チェックは必要です。VBAで調整するサンプルも作ってみました。
セルの文字が隠れる場合の対応は以下にまとめています。
その他、データの集計・可視化の操作事例を以下にまとめています。