« 複数ページにまたがる表を印刷する時に,表タイトルを各ページに表示させる | トップページ | ページ設定をコピーする »

2020年4月16日 (木)

先頭ページ,奇数・偶数ページのヘッダー・フッターの設定

ヘッダー・フッターは先頭ページのみ異なる内容に設定できます。
さらに,奇数・偶数ページで異なる内容にも設定できます。

手動で設定する場合,
[奇数/偶数ページを別指定]と
[先頭ページのみ別指定]にチェックを入れて
[ヘッダーの編集]か[フッターの編集]をクリックします。

Vba20200415a

先頭ページ,奇数ページ,偶数ページと
タブが分かれて表示されるようになるので
それぞれのタブで異なる内容を設定できます。

Vba20200415b



VBAでの設定の方法を見ていきます。

先頭ページのヘッダー・フッターは
DifferentFirstPageHeaderFooterプロパティを
Trueにすると有効になります。

次のコードでは
文字列の設定と画像の設定を
別のWithステートメントでまとめています。
画像の設定はヘッダー左側のみです。

設定内容の詳細については、
以下の記事を参照してください。
記事「ヘッダー・フッターの設定
記事「ヘッダー・フッターのフォント設定
記事「ヘッダー・フッターに画像を表示させる

先頭ページのヘッダー・フッターを設定するコード:

Sub macro20200415a()
 '先頭ページのヘッダー・フッターの設定

    ActiveSheet.PageSetup.DifferentFirstPageHeaderFooter = True
   
    '先頭ページ-文字列設定
    With ActiveSheet.PageSetup.FirstPage
        .LeftHeader.Text = "先頭ページ" & Chr(10) & "ヘッダー左&G"
        .CenterHeader.Text = "先頭ページ" & Chr(10) & "ヘッダー中央"
        .RightHeader.Text = "先頭ページ" & Chr(10) & "ヘッダー右"
        .LeftFooter.Text = "先頭ページ" & Chr(10) & "フッター左"
        .CenterFooter.Text = "先頭ページ" & Chr(10) & "フッター中央"
        .RightFooter.Text = "先頭ページ" & Chr(10) & "フッター右"
    End With
   
    '先頭ページ-画像設定
    With ActiveSheet.PageSetup.FirstPage.LeftHeader.Picture
        .Filename = "C:\Users\Username\img.png"
    End With

 End Sub

ヘッダー左側以外に
画像を設定したい場合は
LeftHeaderを下表のどれかに置換してください。

LeftHeader
ヘッダー左
CenterHeader
ヘッダー中央
RightHeader
ヘッダー右
LeftFooter
フッター左
CenterFooter
フッター中央
RightFooter
フッター右



奇数・偶数ページ別のヘッダー・フッターは
OddAndEvenPagesHeaderFooterプロパティをTrueにすると
有効になります。

次のコードでは
奇数ページと偶数ページでそれぞれ
文字列の設定と画像の設定を
別のWithステートメントでまとめています。

画像の設定はヘッダー左側のみなので
他の部分に画像を設定したい場合は
先ほどと同じようにLeftHeaderを置換してください。

奇数・偶数ページのヘッダー・フッターの設定するコード:

Sub macro20200415b()
 '奇数・偶数ページのヘッダー・フッターの設定

    ActiveSheet.PageSetup.OddAndEvenPagesHeaderFooter = True
   
    '奇数ページ-文字列設定
    With ActiveSheet.PageSetup
        .LeftHeader = "奇数ヘッダー左&G"
        .CenterHeader = "奇数ヘッダー中央"
        .RightHeader = "奇数ヘッダー右側"
        .LeftFooter = "奇数フッター左"
        .CenterFooter = "奇数フッター中央"
        .RightFooter = "奇数フッター右"
    End With
   
    '奇数ページ-画像設定(ヘッダー左側のみ)
    With ActiveSheet.PageSetup.LeftHeaderPicture
        .Filename = "C:\Users\Username\img.png"
    End With
   
    '偶数ページ-文字列設定
    With ActiveSheet.PageSetup.EvenPage
        .LeftHeader.Text = "偶数ヘッダー左側&G"
        .CenterHeader.Text = "偶数ヘッダー中央"
        .RightHeader.Text = "偶数ヘッダー右"
        .LeftFooter.Text = "偶数フッター左"
        .CenterFooter.Text = "偶数フッター中央"
        .RightFooter.Text = "偶数フッター右"
    End With
   
    '偶数ページ-画像設定(ヘッダー左側のみ)
    With ActiveSheet.PageSetup.EvenPage.LeftHeader.Picture
        .Filename = "C:\Users\Usename\img.png"
    End With

 End Sub

使用Ver:Excel For Office365

|

« 複数ページにまたがる表を印刷する時に,表タイトルを各ページに表示させる | トップページ | ページ設定をコピーする »

コメント

この記事へのコメントは終了しました。