[リストへもどる]
一括表示

投稿時間:2004/01/28(Wed) 13:17
投稿者名:はこ
Eメール:
URL :
タイトル:
Excel経由で印刷時に文字が欠ける
いつも大変参考にさせてもらっています。

こちらの「Excel&Word関係」の「VBからエクセルを操作する(その2)」を
参考にして、Excel経由で印刷をしようとしています。

シート全体を「折り返して全体を表示する」にチェックしているので、
セルに代入する文字列が長い場合、セルの高さが自動で変わります。
このときExcel上から見ると問題ないのですが、印刷するとセルの大きさが
わずかに小さいみたいで、代入した文字が一部隠れてしまうことがあります。

Excelから見たときのように、文字が欠けないように印刷する方法はない
でしょうか?

ご存知の方いらっしゃいましたらご教授ください。
よろしくお願いします。

投稿時間:2004/01/28(Wed) 16:48
投稿者名:Kusakabe
Eメール:
URL :
タイトル:
Re: Excel経由で印刷時に文字が欠ける
> このときExcel上から見ると問題ないのですが、印刷するとセルの大きさが
> わずかに小さいみたいで、代入した文字が一部隠れてしまうことがあります。

まあ、当たり前ですね :)
仕様みたいなものですから

(知っていたら読まなくて良いが)
Excel上でセルに文字が全部入っていても、
印刷時に一部がはみ出すのは昔から問題視されてきました。
有名なバグ(バグではないんだけど)です。
印刷プレビューで見れば、大体わかるのですが。
またプリンタによって入ったり入らなかったりしますよね。
セルの書式の「折り返して全体を表示する」ではなく、
「縮小して全体を表示する」だったら問題ないのですがねぇ。

> Excelから見たときのように、文字が欠けないように印刷する方法はない
> でしょうか?

Excelから見たときのようにとありますが...
ほーう...印刷プレビューで見ても文字の一部が隠れないというのですか? :-P

# とにかく、一度印刷プレビューで見てください。

投稿時間:2004/01/29(Thu) 20:16
投稿者名:はこ
Eメール:
URL :
タイトル:
Re^2: Excel経由で印刷時に文字が欠ける
回答どうもありがとうございます。

印刷プレビューした時点で文字が欠けてしまっているのは
気づいていました。
「Excelで見たときのように」というのはファイルを開いた
状態のときのことを言いたかったのです。
誤解をまねく説明ですみません。

投稿時間:2004/01/29(Thu) 10:35
投稿者名:匿名希望
Eメール:
URL :
タイトル:
Re: Excel経由で印刷時に文字が欠ける

> Excelから見たときのように、文字が欠けないように印刷する方法はない
> でしょうか?

最後に改行だけを追加して、下側の文字が印刷されないと言う仕様(バグ?)に対処した事があります。
試してみてはいかがでしょうか?

投稿時間:2004/01/29(Thu) 20:17
投稿者名:はこ
Eメール:
URL :
タイトル:
Re^2: Excel経由で印刷時に文字が欠ける
回答どうもありがとうございます。

教えていただいた方法を試してみました。
望みどおり最後の行の文字が欠けてしまう現象を防ぐことが
出来ました。
ですが、各行に空行ができてしまい、見た目がちょっと問題
になってしまいました。
せっかく教えていただいたのに申し訳ありません。

投稿時間:2004/01/29(Thu) 11:38
投稿者名:ak
Eメール:
URL :
タイトル:
Re: Excel経由で印刷時に文字が欠ける
おっしゃる通りExcelで文字列を折り返して表示して印刷すると一部印刷されない事が
あります。

対処法としては等幅のフォント(MSゴシックなど)を使用し印刷できる1行辺りの文字数を
調べてその文字数毎に改行してExcelに代入すれば良いと思います。
(TrueType のフォントの場合、なぜか 1.5 の倍数のポイント以外では、ズレてしまう事
があるようなのでフォントサイズは1.5の倍数に設定してください。)

投稿時間:2004/01/29(Thu) 20:20
投稿者名:はこ
Eメール:
URL :
タイトル:
Re^2: Excel経由で印刷時に文字が欠ける
教えていただいた方法を試してみました。
横方向に文字が欠けるのは防ぐことが出来たのですが、
縦方向に文字が欠けるのは防ぐことが出来ませんでした。

そこでちょっと思いついたんですけど。
1行の文字数をあらかじめ決めておけば、全体の文字数
から何行になるか計算することができるので、その行数
からセルの高さを変更すればいいのでは!?

というわけで少々強引な方法だとは思いますが、1行ずつ
セルの高さを計算して、変更するということで対応する
ことにしました。

回答どうもありがとうございました。