目次
経緯
Excelファイルで定期的に印刷が必要な場面があり、
「いちいち印刷設定を開かずに、ワンクリックで印刷できたら便利だ」と思い、
VBAでSheet1を自動印刷するマクロを書いてみました。
実行後の仕様
このマクロを実行すると、次のように動作します。
- Excelブック内のSheet1が自動で印刷される
- 印刷は縦向きで、用紙1ページに収まるように縮小される
- 印刷完了後にメッセージボックスで通知
VBAコード
以下が、実際に使用しているマクロです。
Sub PrintOrderList()
Dim ws As Worksheet
' 印刷するシートを指定
Set ws = ThisWorkbook.Sheets("Sheet1")
' 印刷設定
With ws.PageSetup
.Orientation = xlPortrait ' 縦向き印刷
.Zoom = False ' 拡大縮小率の指定を無効化
.FitToPagesWide = 1 ' 横1ページに収める
.FitToPagesTall = 1 ' 縦1ページに収める
End With
' 印刷実行
ws.PrintOut
MsgBox "Sheet1が印刷されました。"
End Sub
補足:このコードの応用ポイント
Sheet1の部分を別のシート名に変更すれば、任意のシートを印刷対象に設定できます。PageSetupの設定を変更することで、横向き印刷や複数ページ印刷にも対応可能です。.PrintOutの代わりに.PrintPreviewを使えば、事前に印刷プレビュー画面を表示できます。
ws.PrintPreview ' 印刷プレビューで確認したい場合はこちらに変更
まとめ
- Excelのシートを自動で印刷する簡易マクロをVBAで作成可能
- 印刷設定を毎回調整せずに済むため、作業の効率化に役立つ
- 応用すれば複数シート対応や印刷範囲の設定も可能
日常業務で繰り返し使う印刷作業をワンクリックで実行できるのは非常に便利です。
ぜひ活用してみてください。
技術書の購入コストを抑えてスキルアップするなら

ここまで読んでいただきありがとうございます。最後に宣伝をさせてください。
プログラミングの技術書や参考書は、1冊3,000円〜5,000円するものも多く、出費がかさみがちです。Kindle Unlimitedであれば、月額980円で500万冊以上の書籍が読み放題となります。
気になる言語の入門書から、アルゴリズム、基本設計の専門書まで、手元のスマホやPCですぐに参照可能です。現在は「30日間の無料体験」や、対象者限定の「3か月499円プラン」なども実施されています。まずはご自身のアカウントでどのようなオファーが表示されるか確認してみてください。
