新規作成した請求書は印刷設定しないと1ページ内に印刷できないので、印刷範囲を設定し、余白設定で位置も調整します
印刷範囲の設定はPrintAreaプロパティで行います。
印刷時の余白設定はそれぞれ下記のプロパティで行い、数値をセンチからポイントに変換するにはCentimetersToPointsメソッドを使います。
- LeftMargin : 左余白の設定と取得
- RightMargin : 右余白の設定と取得
- TopMargin : 上余白の設定と取得
- BottomMargin : 下余白の設定と取得
- HeaderMargin : ヘッダーの余白の設定と取得
- FooterMargin : フッターの余白の設定と取得
作成画面
■設定前の印刷プレビュー画面
設定前に印刷プレビューを実行すると、下と右端が切れ、全部で4ページ印刷されてしまいます。
そこで、PrintAreaプロパティで印刷範囲のB2:X44を設定します。
Workbooks(sNewBook).Worksheets("Sheet1").PageSetup.PrintArea = _
Workbooks(sNewBook).Worksheets("Sheet1").Range("B2:X44").Address
これで中央付近になりましたが、以前下側がきれ、印刷は2ページになっています。
次に余白を設定し、上下は中央に左右は綴じ易いように、ちょっと左を広くします。
Workbooks(sNewBook).Worksheets("Sheet1").PageSetup.LeftMargin = _
Application.CentimetersToPoints(2.3)
Workbooks(sNewBook).Worksheets("Sheet1").PageSetup.RightMargin = _
Application.CentimetersToPoints(1.2)
Workbooks(sNewBook).Worksheets("Sheet1").PageSetup.TopMargin = _
Application.CentimetersToPoints(1.7)
Workbooks(sNewBook).Worksheets("Sheet1").PageSetup.BottomMargin = _
Application.CentimetersToPoints(0.9)
これで1ページ内の中央付近に印刷することができました。
■印刷設定範囲と余白の設定をするVBAコード
追加したコードはシート名を変更する前に挿入しました。
前後のコードはStep17以前掲載を参照してください。