オブジェクト.PageSetup.プロパティ = 設定値
『使用例』: Worksheets(“Sheet1”). PageSetup.PaperSize = xlPaperA5 ‘ 印刷する用紙をA5に指定
| タブ | 設定内容 | PageSetupプロパティ | 設定値 |
|---|---|---|---|
| 『ページ』 | 印刷の向き | Orientation | xlPortrait(縦)・xlLandscape(横) |
| 拡大/縮小 | Zoom | 10~400の数値 | |
| ページ数に合わせて印刷(横) | FitToPagesWide | 横方向のページ数 | |
| ページ数に合わせて印刷(縦) | FitToPagesTall | 縦方向のページ数 | |
| 用紙サイズ | PaperSize | xPaperA4(A4サイズ)・xPaperA3(A3サイズ) 他 | |
| 先頭ページ番号 | FirstPageSize | xlAutomatic(自動)・ページ番号の数値 |
Sub PageSetup01() 'A4縦からA4横に用紙1ページに収めて印刷する。
With Worksheets("Sheet1")
.PageSetup.Orientation = xlLandscape '印刷の向きを「横」
.PageSetup.PaperSize = xlPaperA4 '指定する用紙A4
.PageSetup.FitToPagesWide = 1 '横1ページに指定
.PageSetup.FitToPagesTall = 1 '縦1ページに指定
.PageSetup.FirstPageNumber = 5 '先頭のページ番号を5に設定
.PageSetup.CenterFooter = "- " & "&P" & " -" 'フッターにページ番号を表示
.PrintPreview 'プレビュー画面を表示させます。
End With
End Sub
オブジェクト.PageSetup.プロパティ = 設定値
『使用例』: Worksheets(“Sheet1”). PageSetup.TopMargin = Application.CentimetersToPoints(3) ‘上余白を3cmに設定
『余白サイズ』設定方法
①Cm単位: PageSetup.TopMargin = Application.CentimetersToPoints(3) ’3cm
②ポイント単位:PageSetup.TopMargin = 10 ’10ポイント(3.5cm)
※余白を設定する場合は、ポイント単位は、1ポイント(0.35mm)です。ポイントでの設定は、分かり辛いので、Application.CentimetersToPointsメゾットを利用して数値=Cm単位での設定がおすすめです。
| タブ | 設定内容 | PageSetupプロパティ | 設定値 |
|---|---|---|---|
| 『余白』 | 上余白 | TopMargin | ポイント単位の数値(上余白) |
| 下余白 | BottomMargin | ポイント単位の数値(下余白) | |
| 左余白 | LeftMargin | ポイント単位の数値(左余白) | |
| 右余白 | RightMargin | ポイント単位の数値(右余白) | |
| ページ中央(水平) | CenterHorizontally | True (ON)/ False (OFF) | |
| ページ中央(垂直) | CenterVertically | True (ON)/ False (OFF) |
Sub PageSetup02() '指定する余白サイズに設定します。ページ中央の設定
With Worksheets("Sheet1")
.PageSetup.TopMargin = Application.CentimetersToPoints(3) '上余白を3cmに設定
.PageSetup.RightMargin = Application.CentimetersToPoints(4) '右余白を4cmに設定
.PageSetup.LeftMargin = Application.CentimetersToPoints(5) '左余白を5cmに設定
.PageSetup.BottomMargin = Application.CentimetersToPoints(6) '下余白を6cmに設定
.PageSetup.HeaderMargin = Application.CentimetersToPoints(1.1) 'ヘッダー余白を1.1cmに設定
.PageSetup.FooterMargin = Application.CentimetersToPoints(2.2) 'フッター余白を2.2cmに設定
.PageSetup.CenterHorizontally = True 'ページ中央水平:ON
.PageSetup.CenterVertically = False 'ページ中央垂直:OFF
.PrintPreview 'プレビュー表示
End With
End Sub
オブジェクト.PageSetup.プロパティ = 設定値
『使用例』: Worksheets(“Sheet1”). PageSetup.LeftHeader = “&F” & vbCrLf & “&A”
※『左ヘッダー』に:「ファイル名」・「シート名」を表示します。
| タブ | 設定内容 | PageSetupプロパティ | 設定値 |
|---|---|---|---|
| 『ヘッダー・フッター』 | ヘッダー(左側) | LeftHeader | 書式コード(下記参照)・文字列 |
| ヘッダー(中央部分) | CenterHeader | 書式コード(下記参照)・文字列 | |
| ヘッダー(右側) | RightHeader | 書式コード(下記参照)・文字列 | |
| フッター(左側) | LeftFooter | 書式コード(下記参照)・文字列 | |
| フッター(中央部) | CenterFooter | 書式コード(下記参照)・文字列 | |
| フッター(右側) | RightFooter | 書式コード(下記参照)・文字列 |
| 書式コード | 内容(説明) |
|---|---|
| &P | ページ番号 |
| &N | 総ページ数 |
| &D | 現在の日付 |
| &T | 現在の時刻 |
| &F | ファイル名 |
| &A | シート名 |
| &"フォント名"& | フォントの指定 |
| &nn | フォントサイズの指定 |
| &B | 太字 |
| &I | 斜体 |
| &U | 下線 |
| &G | 画像を表示 |
Sub PageSetup03() 'ヘッダー・フットーにタイトル名・ページ番号と日付・画像等を設定する。
Dim This_Year As Date
This_Year = Now() '現在の日付を取得(年度表示用)
With Worksheets("Sheet1")
.PageSetup.Orientation = xlLandscape '印刷の向きを「横」
'『ヘッダー』
.PageSetup.LeftHeader = "&F" & vbCrLf & "&A" '左ヘッダー:ファイル名 & シート名
.PageSetup.CenterHeader = "&""MS明朝""" & "&16 " & Format(This_Year, "yyyy年度") & "&16 支店別営業一覧表"
.PageSetup.RightHeader = "&D" & vbCrLf & "&T" '右ヘッダー:現在の日付・時刻
'『フッター』
.PageSetup.LeftFooter = "&""MSゴシック"" &10&U経理課作成" '左フッター:MSゴシック・10サイズ・経理課作成”
.PageSetup.CenterFooter = "&P / &N" '中央フッター:ページ番号 / 総ページ数
.PageSetup.RightFooterPicture.Filename = ActiveWorkbook.Path & "\画像.jpg" '右フッター:画像を設定(ファイル設定)
.PageSetup.RightFooter = "&G" '右フッター:画像を表示
.PrintPreview 'プレビュー表示
End With
End Sub
オブジェクト.PageSetup.プロパティ = 設定値
『使用例』: Worksheets(“Sheet1”).PageSetup.PrintArea = “A1:H14”
※印刷範囲の設定を『A1:H14』に設定
| タブ | 設定内容 | PageSetupプロパティ | 設定値 |
|---|---|---|---|
| 『シート』 | 印刷範囲 | PrintArea | A1形式(文字列) |
| 行のタイトル | PrintTitleRows | A1形式(文字列) | |
| 列のタイトル | PrintTitleColumns | A1形式(文字列) | |
| 印刷(枠線) | PrintGridlines | True (ON) / False (OFF) | |
| 印刷(白黒印刷) | BlackAndWhite | True (ON) / False (OFF) | |
| 印刷(簡易印刷) | Draft | True (ON) / False (OFF) | |
| 印刷(行列番号) | PrintHeadings | True (ON) / False (OFF) | |
| 印刷(コメント) | PrintComments | xlPrintInPlace(画面表示イメージ)等 | |
| 印刷(セルのエラー) | PrintErrors | xlPrintErrorsBlank(空白)等 | |
| ページの方向 | Order | xlDownThenOver(左から右へ) / xlOverThenDown(上から下へ) |
下記のサンプルプログラムは、『Sheet3』のシートに対して印刷設定:シートタグの設定を行うサンプルプログラムです。2019年の上期・下期の営業一覧表があります。現在の日付から月を取得して、上期か下期を自動判定を行い、枠線をON・白黒印刷を行うプログラムです。下記の表(EXCEL)は、プログラム実行前の状態です。
Sub PageSetup04() '印刷範囲を設定し、モノクロ印刷等を行います。
Dim This_Mouth As Integer
This_Mouth = Month(Now) '現在の日付を取得(今月を取得)
With Worksheets("Sheet3")
.PageSetup.PaperSize = xlPaperA4 '指定する用紙
.PageSetup.Orientation = xlLandscape '印刷の向きを「横」
If This_Mouth >= 4 And This_Mouth <= 9 Then '現在の月が4~9月は、上期を印刷範囲・それ以外は、下期
.PageSetup.PrintArea = "A1:H14" '上期を印刷範囲に設定
Else
.PageSetup.PrintArea = "J1:Q14" '下期を印刷範囲に設定
End If
.PageSetup.PrintGridlines = True '印刷枠線をONにする。
.PageSetup.BlackAndWhite = True '白黒印刷をONにする。
.PrintPreview 'プレビュー表示
End With
End Sub