印刷範囲を設定するには、PageSetupオブジェクトのPrintAreaプロパティを使用する。使い方はPrintAreaに印刷する範囲を設定するだけなので簡単だ。
図4のような表があったとしよう。これを印刷プレビューで見ると、図2のように[印刷プレビュー]のボタンが途切れて入り、図も最後の方が2ページ目にずれ込んでしまっている。これをそのまま印刷すると、A4用紙3枚に無駄に印刷されてしまう。
この表を[印刷プレビュー]ボタンは外して、A4の用紙1枚に印刷するには、先のPrintAreaプロパティを使うといい。マクロはリスト3のようになる。シート名は「社員売上金額」としている。
- Option Explicit
- Sub 範囲を指定して印刷()
- With Worksheets("社員売上金額").PageSetup
- .PrintArea = "B1:E45"
- .Orientation = xlPortrait
- .Zoom = False
- .FitToPagesTall = 1
- .FitToPagesWide = 1
- .LeftHeader = "売上金額一覧"
- .CenterHeader = "&""Meirio UI""&B&18平成27年度年売上表"
- .LeftFooter = "&F:&A"
- .CenterFooterPicture.Filename = ActiveWorkbook.Path & "\Kyssロゴ.png"
- .CenterFooter = "&G"
- .RightFooter = "&P/&Nページ"
- End With
- Worksheets("社員売上金額").PrintPreview
- End Sub
PrintAreaプロパティで[印刷プレビュー]ボタンを印刷範囲から外して設定している。他のプロパティの設定方法は先ほど紹介したものと同じなので、そちらを参照してほしい。
このマクロを[印刷プレビュー]ボタンに登録してクリックすると、図6のように表示される。
Copyright © ITmedia, Inc. All Rights Reserved.
HTML5+UX 記事ランキング