偶数ページに別のヘッダーおよびフッターを設定
偶数ページのヘッダーおよびフッターの内容を設定するには、PageSetup.EvenPage プロパティを使用します。PageSetup.OddAndEvenPagesHeaderFooter プロパティ に、True を指定することで、PageSetup.EvenPage プロパティ に設定した内容が有効になります。(※ Excel 2007 以降のバージョンでのみ使用できます。)
PageSetup.OddAndEvenPagesHeaderFooter プロパティ
True に設定すると、偶数ページでは他のページと異なるヘッダーとフッターが使用されます。値の取得および設定が可能です。ブール型(Boolean)の値を使用します。
<取得>
object.PageSetup.OddAndEvenPagesHeaderFooter
<設定>
object.PageSetup.OddAndEvenPagesHeaderFooter = boolean
引数・戻り値
- object ・・・ 対象となる Worksheet オブジェクト を指定します。
- boolean ・・・ True または、False を指定します。
PageSetup.EvenPage プロパティ
印刷対象の偶数ページのヘッダーおよびフッターを設定する際に使用する Page オブジェクト を取得します。
Page オブジェクト は、LeftHeader プロパティ、CenterHeader プロパティ などを使用して、各ヘッダー、フッター等を表す HeaderFooter オブジェクト を取得することができます。
HeaderFooter オブジェクト の Text プロパティ を使用して、各ヘッダー・フッターの文字列等の設定を行い、Picture プロパティ を使用して、画像の設定を行います。( 印刷設定(ページごとに異なるヘッダー・フッターを設定)Page オブジェクト・HeaderFooter オブジェクト を参照)
object.PageSetup.EvenPage
引数・戻り値
- object ・・・ 対象となる Worksheet オブジェクト を指定します。
偶数ページに他のページと異なるヘッダーを設定した例
サンプルVBAソース
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 |
Sub Sample_HeaderFooter07() Dim w As Worksheet Dim pict1 As String, pict2 As String Set w = ActiveSheet pict1 = CreateObject("WScript.Shell").SpecialFolders("MyDocuments") & "/sample01.jpg" pict2 = CreateObject("WScript.Shell").SpecialFolders("MyDocuments") & "/sample02.jpg" 'プリンタとの通信を遮断(印刷設定を高速化) Application.PrintCommunication = False With w.PageSetup '先頭ページのみ他ページと異なるヘッダーおよびフッターを設定する .DifferentFirstPageHeaderFooter = True '偶数ページに別のヘッダーおよびフッターを設定する .OddAndEvenPagesHeaderFooter = True '【先頭ページのヘッダー・フッターの設定】 With .FirstPage 'ヘッダー中央に、文字列「[シート名] 先頭のページ」 '文字サイズ 24、色 青、太字、二重下線 .CenterHeader.Text = "&24&K0000FF&B&E&A 先頭のページ" 'フッター中央に、ページ数と総ページ数を表示 .CenterFooter.Text = "&P / &N ページ" End With '【偶数ページのヘッダー・フッターの設定】 With .EvenPage '表示する画像のパス&名前 .CenterHeader.Picture.Filename = pict2 '画像の縦横サイズの比率を維持 .CenterHeader.Picture.LockAspectRatio = msoTrue '元画像のサイズ 500 .CenterHeader.Picture.Width = 250 '元画像のサイズ 250 .CenterHeader.Picture.Height = 125 '画像の色(自動) .CenterHeader.Picture.ColorType = msoPictureAutomatic '画像の明度( 50% ) .CenterHeader.Picture.Brightness = 0.5 '画像のコントラスト( 50% ) .CenterHeader.Picture.Contrast = 0.5 'ヘッダー中央に画像を表示 .CenterHeader.Text = "&G" 'フッター中央に、ページ数と総ページ数を表示 .CenterFooter.Text = "&P / &N ページ" End With '【上記以外のページのヘッダー・フッターの設定】 '表示する画像のパス&名前 .CenterHeaderPicture.Filename = pict1 '画像の比率を維持 '※元画像との比率が異なる場合は Height の値が基準となる .CenterHeaderPicture.LockAspectRatio = msoTrue '元画像のサイズ 500 .CenterHeaderPicture.Width = 500 '元画像のサイズ 300 .CenterHeaderPicture.Height = 150 '画像の色(自動) .CenterHeaderPicture.ColorType = msoPictureAutomatic '画像の明度( 50% ) .CenterHeaderPicture.Brightness = 0.5 '画像のコントラスト( 50% ) .CenterHeaderPicture.Contrast = 0.5 'トリミングの範囲を設定 .CenterHeaderPicture.CropTop = 0 .CenterHeaderPicture.CropBottom = 250 .CenterHeaderPicture.CropLeft = 0 .CenterHeaderPicture.CropRight = 210 'ヘッダー中央に画像を表示 .CenterHeader = "&G" 'フッター中央に、ページ数と総ページ数を表示 .CenterFooter = "&P / &N ページ" End With 'プリンタとの通信を再開 Application.PrintCommunication = True 'プレビュー表示 w.PrintPreview End Sub |