対象:Excel2003, Excel2007, Excel2010, Excel2013
「excel vba 印刷 範囲 クリア」
という検索で、このサイト・インストラクターのネタ帳へのアクセスがありました。
Excelで印刷範囲をクリア・解除・削除するVBAのコードを探している方による検索です。
[スポンサードリンク]
全ワークシートの印刷範囲を解除するサンプルマクロ
ここでは、アクティブなブックの、すべてのワークシートの印刷範囲をクリアするマクロをご紹介しておきましょう。
Sub 全ワークシートの印刷範囲をクリアする()
Dim sht As Worksheet
For Each sht In Worksheets
sht.PageSetup.PrintArea = ""
Next
End Sub
Dim sht As Worksheet
For Each sht In Worksheets
sht.PageSetup.PrintArea = ""
Next
End Sub
サンプルマクロで行っている処理内容
マクロ記録を行ってみると、
ActiveSheet.PageSetup.PrintArea = ""
というコードが自動的に作られます。
PageSetupオブジェクトのPrintAreaプロパティに「""」(空白文字列)を設定するコードです。
アクティブなワークシートの印刷範囲をクリアするには、この1行だけでOKです。
マクロ記録で作られる
ActiveSheet.PageSetup.PrintArea = ""
というコードを、すべてのワークシートに対してループ処理で行うようにすれば、すべてのワークシートの印刷範囲を解除できます。
PageSetupオブジェクトは、WorksheetにもChartにもありますが、PrintAreaプロパティはChartオブジェクトのPageSetupオブジェクトにはありませんから、Worksheetオブジェクトにだけループ処理を、
For Each sht In Worksheets
行い、For Each~Nextループ内でPageSetup.PrintAreaプロパティに空白文字列を設定しています。
sht.PageSetup.PrintArea = ""
最終更新日時:2025-04-22 17:01
[スポンサードリンク]
Home » エクセルマクロ・Excel VBAの使い方 » ページ設定・PageSetup » VBAで全シートの印刷範囲をクリア・解除・削除する