« ヘッダー・フッターの設定 | トップページ | ヘッダー・フッターにセルの値を使用する »

2020年4月 2日 (木)

ヘッダー・フッターのフォント設定

手動でヘッダー・フッターのフォント設定をするには
次のような手順で行います。
[印刷]-[ページ設定]-[ヘッダー/フッター]タブで
次のウィンドウが開きます。
Vba20200402a

上の画像の
[ヘッダーの編集]か[フッターの編集]をクリックすると
次のウィンドウが開きます。
Vba20200402b

フォントなどを設定したい文字を選択して
文字書式ボタンを押します。
次のウィンドウを開くので、ここでフォント設定します。
  Vba20200402c

文字ごとに
異なるフォントを設定することもできます。

セルのフォント設定と異なり
ヘッダー・フッターにはフォント設定用のプロパティがないので
ヘッダー・フッターに表示させたい値を指定する文字列の中に
フォント設定を盛り込みます。

具体的に見ていきます。
下記は「ヘッダー左」という文字列のフォントを
HGPゴシックE、太字、文字大きさ14、下線、
色を水色に設定する場合の値です。

"&""HGPゴシックE,太字""&14&U&K08+039ヘッダー左側"

表示例:
Vba20200402d

設定方法が分かりにくく、
0からコードを書くには手間がかかりそうなので
ヘッダー・フッターの文字の設定は
マクロの記録で作成していきます。

マクロの記録は
[表示]タブ-[マクロ]-[マクロの記録]をクリックすると
次のウィンドウが開きます
マクロ名を覚えておいてください。
[OK]で記録が開始されます。
Vba20200402e

マクロの記録をしている状態で
この記事で見てきたように手動でフォントの設定をします。
[OK]ボタンでページ設定を終了します。

この時点でマクロの記録を終了します。

マクロの記録を終了するには
[表示]タブ-[マクロ]-[記録の終了]をクリックします。

記録されたマクロを見るには
[表示]タブ-[マクロ]-[マクロの表示]をクリックし、
先ほど覚えておいたマクロ名を選択して[編集]クリックします。
Visual Basic Editorが開きますので
ここで記録されたマクロを確認できます。

マクロ記録一例:

Sub Macro1()
'
' Macro1 Macro
'

'
    Application.PrintCommunication = False
    With ActiveSheet.PageSetup
        .PrintTitleRows = ""
        .PrintTitleColumns = ""
    End With
    Application.PrintCommunication = True
    ActiveSheet.PageSetup.PrintArea = "$A$1:$R$66"
    Application.PrintCommunication = False
    With ActiveSheet.PageSetup
        .LeftHeader = "&""HGPゴシックE,太字""&14&U&K08+036ヘッダー左側"
        .CenterHeader = ""
        .RightHeader = ""
        .LeftFooter = ""
        .CenterFooter = ""
        .RightFooter = ""
        .LeftMargin = Application.InchesToPoints(0.708661417322835)
        .RightMargin = Application.InchesToPoints(0.708661417322835)
        .TopMargin = Application.InchesToPoints(0.748031496062992)
        .BottomMargin = Application.InchesToPoints(0.748031496062992)
        .HeaderMargin = Application.InchesToPoints(0.31496062992126)
        .FooterMargin = Application.InchesToPoints(0.31496062992126)
        .PrintHeadings = False
        .PrintGridlines = False
        .PrintComments = xlPrintNoComments
        .CenterHorizontally = False
        .CenterVertically = False
        .Orientation = xlPortrait
        .Draft = False
        .PaperSize = xlPaperA4
        .FirstPageNumber = xlAutomatic
        .order = xlDownThenOver
        .BlackAndWhite = False
        .Zoom = 100
        .PrintErrors = xlPrintErrorsDisplayed
        .OddAndEvenPagesHeaderFooter = False
        .DifferentFirstPageHeaderFooter = False
        .ScaleWithDocHeaderFooter = True
        .AlignMarginsHeaderFooter = True
        .EvenPage.LeftHeader.Text = ""
        .EvenPage.CenterHeader.Text = ""
        .EvenPage.RightHeader.Text = ""
        .EvenPage.LeftFooter.Text = ""
        .EvenPage.CenterFooter.Text = ""
        .EvenPage.RightFooter.Text = ""
        .FirstPage.LeftHeader.Text = ""
        .FirstPage.CenterHeader.Text = ""
        .FirstPage.RightHeader.Text = ""
        .FirstPage.LeftFooter.Text = ""
        .FirstPage.CenterFooter.Text = ""
        .FirstPage.RightFooter.Text = ""
    End With
    Application.PrintCommunication = True
End Sub

マクロの自動記録では特に変更していないものまで
一式で記録されてしますので難しく感じますが、
ここではヘッダー・フッターのフォント設定のみしたいので
必要部分は次の部分のみです。

.LeftHeader = "&""HGPゴシックE,太字""&14&U&K08+036ヘッダー左側"
.CenterHeader = ""
.RightHeader = ""
.LeftFooter = ""
.CenterFooter = ""
.RightFooter = ""

さらに、
今回はヘッダー左側しか使用していないので
LeftHeader以外は不要ですので削除して整理すると
次のコードのようになります。

ヘッダー・フッターの文字書式を設定するコード1:

Sub macro20200402a()
'ヘッダー・フッターの文字書式の設定

    With ActiveSheet.PageSetup
        .LeftHeader = "&""HGPゴシックE,太字""&14&U&K08+036ヘッダー左側"
    End With
   
End Sub

上のコードでは文字書式のみではなく
文字列も指定しますが、
文字は入力されていて書式のみ変えたい場合は
次のようになります。

ヘッダー・フッターの文字書式を設定するコード2:

Sub macro20200402b()
'ヘッダー・フッターの文字書式の設定

    With ActiveSheet.PageSetup
        .LeftHeader = "&""HGPゴシックE,太字""&14&U&K08+036" & .LeftHeader
    End With
   
End Sub

次は、
文字列を変数で指定する方法に変更してみます。

ヘッダー・フッターの文字書式を設定するコード3:

Sub macro20200402c()
'ヘッダー・フッターの文字書式の設定
    Dim str As String
    str = "ヘッダー左側"
   
    With ActiveSheet.PageSetup
        .LeftHeader = "&""HGPゴシックE,太字""&14&U&K08+036" & str
    End With
   
End Sub

使用Ver:Excel For Office365

 

|

« ヘッダー・フッターの設定 | トップページ | ヘッダー・フッターにセルの値を使用する »

コメント

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