Excel VBA 印刷時の余白を設定する-Margin

Excel VBAでワークシートを印刷する時の余白を設定する方法を記録します。

設定は「PageSetup」オブジェクトの余白を設定するプロパティを使います。

< スポンサーリンク >





余白を設定する書き方

WorkSheetオブジェクト.PageSetup.○○Margin = ポイント

○○Marginの部分は以下

TopMargin = 上余白
BottomMargin = 下余白
LeftMargin = 左余白
RightMargin = 右余白
HeaderMargin = ヘッダー余白
FooterMargin = フッター余白

 

VBAで余白を設定する

余白を設定する時はポイント数で指定します。(1ポイント=0.35mm)

ポイントでの指定は面倒です。そんな時はポイントに変換してくれるメソッドを使うと便利です。

InchesToPoints = インチ単位の数値をポイントに変換してくれます。

CentimetersToPoints = センチメートル単位の数値をポイントに変換してくれます。

 

上余白を1.5インチで設定してみます。

Sub test()
    ActiveSheet.PageSetup.TopMargin = Application.InchesToPoints(1.5)
End Sub

Excel印刷余白

 

上余白を2センチメートルで設定してみます。

Sub test()
    ActiveSheet.PageSetup.TopMargin = Application.CentimetersToPoints(2)
End Sub

Excel印刷余白

 

全ての余白を一度で設定するには「With」ステートメントを使うと便利です。

Sub test()
    With ActiveSheet.PageSetup
        .TopMargin = Application.CentimetersToPoints(2)
        .BottomMargin = Application.CentimetersToPoints(1)
        .LeftMargin = Application.CentimetersToPoints(1.5)
        .RightMargin = Application.CentimetersToPoints(0.5)
        .HeaderMargin = Application.CentimetersToPoints(1.5)
        .FooterMargin = Application.CentimetersToPoints(0.5)
    End With
End Sub

Excel印刷余白

 

< スポンサーリンク >※広告先のお問い合わせは広告主様にお願いします