Excel印刷でイライラしないためのマクロ基本TipsExcelマクロ/VBAで始める業務自動化プログラミング入門(11)(3/4 ページ)

» 2016年09月15日 05時00分 公開
[薬師寺国安PROJECT KySS]

改ページによるずれ込みを防ぐために、PrintAreaプロパティで「印刷範囲」を固定して表示する設定を行う

 印刷範囲を設定するには、PageSetupオブジェクトのPrintAreaプロパティを使用する。使い方はPrintAreaに印刷する範囲を設定するだけなので簡単だ。

 図4のような表があったとしよう。これを印刷プレビューで見ると、図2のように[印刷プレビュー]のボタンが途切れて入り、図も最後の方が2ページ目にずれ込んでしまっている。これをそのまま印刷すると、A4用紙3枚に無駄に印刷されてしまう。

図4 データが3ページにずれ込んでいる

図5 印刷プレビューで見ると、3ページにずれ込んでいる

 この表を[印刷プレビュー]ボタンは外して、A4の用紙1枚に印刷するには、先のPrintAreaプロパティを使うといい。マクロはリスト3のようになる。シート名は「社員売上金額」としている。

  1. Option Explicit
  2. Sub 範囲を指定して印刷()
  3. With Worksheets("社員売上金額").PageSetup
  4. .PrintArea = "B1:E45"
  5. .Orientation = xlPortrait
  6. .Zoom = False
  7. .FitToPagesTall = 1
  8. .FitToPagesWide = 1
  9. .LeftHeader = "売上金額一覧"
  10. .CenterHeader = "&""Meirio UI""&B&18平成27年度年売上表"
  11. .LeftFooter = "&F:&A"
  12. .CenterFooterPicture.Filename = ActiveWorkbook.Path & "\Kyssロゴ.png"
  13. .CenterFooter = "&G"
  14. .RightFooter = "&P/&Nページ"
  15. End With
  16. Worksheets("社員売上金額").PrintPreview
  17. End Sub
リスト3 範囲を設定して印刷

 PrintAreaプロパティで[印刷プレビュー]ボタンを印刷範囲から外して設定している。他のプロパティの設定方法は先ほど紹介したものと同じなので、そちらを参照してほしい。

 このマクロを[印刷プレビュー]ボタンに登録してクリックすると、図6のように表示される。

図6 [印刷プレビュー]ボタンを外して印刷範囲を設定した

Copyright © ITmedia, Inc. All Rights Reserved.

スポンサーからのお知らせPR

注目のテーマ

4AI by @IT - AIを作り、動かし、守り、生かす
Microsoft & Windows最前線2025
AI for エンジニアリング
ローコード/ノーコード セントラル by @IT - ITエンジニアがビジネスの中心で活躍する組織へ
Cloud Native Central by @IT - スケーラブルな能力を組織に
システム開発ノウハウ 【発注ナビ】PR
あなたにおすすめの記事PR

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。