構文
構文は以下の通りです。
With ActiveSheet.PageSetup
.TopMargin = Application.CentimetersToPoints(余白の上)
.BottomMargin = Application.CentimetersToPoints(余白の下)
.LeftMargin = Application.CentimetersToPoints(余白の左)
.RightMargin = Application.CentimetersToPoints(余白の右)
End With
.TopMargin = Application.CentimetersToPoints(余白の上)
.BottomMargin = Application.CentimetersToPoints(余白の下)
.LeftMargin = Application.CentimetersToPoints(余白の左)
.RightMargin = Application.CentimetersToPoints(余白の右)
End With
解説
ActiveSheet.PageSetupは、現在アクティブなシートのページ設定を行います。TopMargin, BottomMargin, LeftMargin, RightMarginは、それぞれ、上、下、左、右の余白を設定します。単位はポイントで指定しますが、Application.CentimetersToPointsを使うことで、センチメートル単位で指定できます。※Application.CentimetersToPointsは、センチメートルをポイントに変換します。余白のサイズをセンチメートルで指定する場合に使用します。
プログラミング例
具体的なプログラミング例を紹介します。
Sub ページの余白を設定する()
Dim 余白の上 As Double
Dim 余白の下 As Double
Dim 余白の左 As Double
Dim 余白の右 As Double
' 余白の値をセンチメートルで設定
余白の上 = 2.5
余白の下 = 2.5
余白の左 = 2.0
余白の右 = 2.0
With ActiveSheet.PageSetup
.TopMargin = Application.CentimetersToPoints(余白の上)
.BottomMargin = Application.CentimetersToPoints(余白の下)
.LeftMargin = Application.CentimetersToPoints(余白の左)
.RightMargin = Application.CentimetersToPoints(余白の右)
End With
MsgBox "ページの余白が設定されました", vbInformation
End Sub
Dim 余白の上 As Double
Dim 余白の下 As Double
Dim 余白の左 As Double
Dim 余白の右 As Double
' 余白の値をセンチメートルで設定
余白の上 = 2.5
余白の下 = 2.5
余白の左 = 2.0
余白の右 = 2.0
With ActiveSheet.PageSetup
.TopMargin = Application.CentimetersToPoints(余白の上)
.BottomMargin = Application.CentimetersToPoints(余白の下)
.LeftMargin = Application.CentimetersToPoints(余白の左)
.RightMargin = Application.CentimetersToPoints(余白の右)
End With
MsgBox "ページの余白が設定されました", vbInformation
End Sub
上記のプログラムは、アクティブなシートのページ余白を設定します。余白は上と下が2.5センチメートル、左と右が2.0センチメートルに設定されています。コードを実行すると、余白が設定され、メッセージボックスで「ページの余白が設定されました」と表示されます。
まとめ
ページの余白を設定するには、ActiveSheet.PageSetupを使用し、TopMargin、BottomMargin、LeftMargin、RightMarginで余白の大きさをポイント単位で指定します。センチメートルで設定したい場合は、Application.CentimetersToPoints メソッドを使うと便利です。余白の設定は、印刷時にページレイアウトを整えるのに重要です。