- ベストアンサー
ぴったり印刷するエクセルVBAをつくるには
用紙サイズやマージンを指定して、1ページに最大倍率で印刷する方法はないでしょうか?(自動的に) 以前「QNo.2677602 ExcelVBA、印刷ページを事前に知るには 」で教えていただいた i = Application.ExecuteExcel4Macro("GET.DOCUMENT(50)") を利用して次の動作をするVBAマクロを作りました。 PageSetupでZoomに100を指定し、1ページに収まるかどうか調べる。 1ページ内の時は1ページを越えるまでZoomを+1し越えたら-1する。 1ページ以上の時は1ページになるまでZoomを-1する。 これで上手くいくと思ったら、動くことは動くのですが、結果は大き過ぎたり小さすぎたりして、後で手作業で調整しなければなりません。 実行速度も非常に遅いです。 うまくやる方法はないものでしょうか? よろしくお願い申し上げます。
- みんなの回答 (2)
- 専門家の回答
お礼
回答ありがとうございます。 ちょっと無理なお願いをしてしまったようです。 用途としては設計文書をエクセルで作っており、各シート毎に各1ページの異なったフォームになっています。 常に印刷前に調整しなければならず、簡素化しようとしていました。 全て自動化するのは無理なようですので、全シートのプレビューを出すなどの半自動でやろうと考えています。