印刷範囲指定マージン設定するマクロ
を示す。マージン(ページ余白)。
■Excel-VBA 印刷範囲指定マージン設定するマクロ
Sub sample40()
Dim MR As Long
MR = Cells(Rows.Count, 1).End(xlUp).Row
With Worksheets("部品表").PageSetup
.PrintTitleRows = "$1:$1"
.PrintArea = "A1:J" & MR
.Orientation = xlPortrait
.TopMargin = Application.CentimetersToPoints(1)
.BottomMargin = Application.CentimetersToPoints(1)
.LeftMargin = Application.CentimetersToPoints(0.8)
.RightMargin = Application.CentimetersToPoints(0.8)
.HeaderMargin = Application.CentimetersToPoints(0.3)
.FooterMargin = Application.CentimetersToPoints(0.3)
.CenterHorizontally = False
.Zoom = False
.FitToPagesTall = False
.FitToPagesWide = 1
End With
End Sub
※[2.] 変数宣言。※[3.] 最終行数取得。
※[5.] ワークシート「部品表」の印刷設定をする。
※[6.] 1行目をタイトル行として印刷する。
※[7.] 1行目A列から最終行J列までを
印刷範囲に指定。
※[8.] 縦向きに印刷。横の場合「xlLandscape」
※[10.~15.] 印刷マージン指定。
※[17.] 水平中央配置。オンにする場合「True」
※[18.] 印刷倍率指定しない。80%にする場合「80」
※[19.] 縦方向のページを枚数限定しない。
※[20.] 横方向のページは1枚に収める。
※[20.] 横方向のページは1枚に収める。
■マクロ実行対象
ワークブック「部品データ_191128.xlsx」印刷プレビュー(ページ2)
■マクロ実行結果
実行すると、1行目A列から最終行J列までを印刷範囲指定する。範囲外の部分は印刷されない。
マージンを指定値に設定する。
■あとがき
今回はExcel VBAマクロ。印刷範囲指定マージン設定するマクロ
を示した。
印刷範囲指定、マージン設定したい場合に使う。
LibreOffice Basicで使う場合は
コードの先頭行に
「Option VBASupport 1」を記述する。
Option VBASupport 1以上。




