メインコンテンツへスキップ

印刷時にExcelシートのヘッダーやフッターに背景色を追加するにはどうすればよいですか?

Author: Sun Last Modified: 2025-05-23

ご存知の通り、ヘッダーやフッターにコンテンツや画像を追加でき、印刷時に表示されます。しかし、ヘッダーやフッターに背景色を追加しようとしたことはありますか?実際、それを処理できる組み込み関数はありませんが、ここではその操作を実現するためのいくつかの方法を紹介します。

塗りつぶし色を使用してヘッダーやフッターに背景色を追加

VBAを使用してヘッダーとフッターに背景色を追加


塗りつぶし色を使用してヘッダーやフッターに背景色を追加

1. クリックしてください ページレイアウト > ページ設定.
A screenshot showing Page Layout Page Setup option in Excel

2. ページ設定 ダイアログで、「 余白 」タブの下にある「 0 」に値を入力します: , ヘッダー, および フッター 」テキストボックスへ。
A screenshot showing Page Setup dialog to adjust margins in Excel

3. 「 OK」をクリックします。次に、最初の行を選択し、「 ホーム > 中央揃えで結合.
A screenshot of Merge and Center option

3. 続けて、「 塗りつぶし色 」リストから色を選択し、結合済みセルに背景色を追加します。
A screenshot of selecting fill color for Excel header

4. ステップ2と3を繰り返して、目的のフッター行に背景色を追加します。

これで、ページにヘッダーとフッターに背景色が追加されたように見えます。
A screenshot showing Excel worksheet with header and footer color


VBAを使用してヘッダーとフッターに背景色を追加

以下は、ヘッダーとフッターに同時に背景色を迅速に追加できるVBAコードです。

1. Alt + F11キーを押してMicrosoft Visual Basic for Applicationsウィンドウを有効にします。

2. 「挿入」>「モジュール」をクリックし、以下のコードを新しいモジュールにコピーして貼り付けます。

VBA: ヘッダーとフッターに背景色を追加

Sub FakeHeaderFooter()
'UpdatebyExtendoffice20180628
    Dim I, J As Long
   Dim xRg As Range
    Dim xRow, xCol As Long
    Dim xRows, xCols As Long
    Dim xDivRow, xDivCol As Long
    Dim xTopArr, xButtArr As Variant
    Dim PageSize1, PageSize2 As Integer
    On Error Resume Next
    xTopArr = Array("Top Left", "", "", "Top Center", "", "", "", "")
    xButtArr = Array("Bottom Left", "", "", "Bottom Center", "", "", "", "")
    PageSize1 = 46
    PageSize2 = 8
    With ActiveSheet.PageSetup
        .TopMargin = Application.InchesToPoints(0)
        .BottomMargin = Application.InchesToPoints(0)
        .HeaderMargin = Application.InchesToPoints(0)
        .FooterMargin = Application.InchesToPoints(0)
        .BlackAndWhite = False
    End With
    Set xRg = ActiveSheet.UsedRange
    If xRg Is Nothing Then Exit Sub
    xRows = xRg(xRg.Count).Row
    xCols = xRg(xRg.Count).Column
    If xRows < 46 Then xRows = 46
    If xCol < 8 Then xCol = 8
    xDivRow = Int(xRows / PageSize1)
    xDivCol = Int(xCols / PageSize2)
    If ((xRows Mod PageSize1) > 0) And (xDivRow <> 0) Then xDivRow = xDivRow + 1
    If ((xCols Mod PageSize2) > 0) And (xDivCol <> 0) Then xDivCol = xDivCol + 1
    If xDivRow = 0 Then xDivRow = 1
    If xDivCol = 0 Then xDivCol = 1
    Set xRg = Range("A1").Resize(xDivRow * PageSize1, xDivCol * PageSize2)
    xRow = 1
    xCol = 1
    Cells.PageBreak = xlPageBreakNone
    For I = 1 To xDivRow * PageSize1 Step PageSize1 + 1
        For J = 1 To xDivCol * PageSize2 Step PageSize2
            Cells(I, J).Resize(1, PageSize2) = xTopArr
            Cells(I, J).Resize(1, PageSize2).Interior.ColorIndex = 34
            Cells(I + PageSize1, J).Resize(1, PageSize2) = xButtArr
            Cells(I + PageSize1, J).Resize(1, PageSize2).Interior.ColorIndex = 34
            Rows(I + PageSize1 + 1).PageBreak = xlManual
            Columns(J + PageSize2).PageBreak = xlManual
        Next
    Next
End Sub

A screenshot showing VBA code pasted in a module

3. F5 キーを押してコードを実行すると、各シートの最初の行と47行目に指定された背景色が追加され、偽のヘッダーとフッターとして表示されます。
A screenshot of VBA-applied header and footer color in Excel

注: コード内の以下のスクリプトを変更してニーズに合わせることができます。

1. 以下の文字列でヘッダーとフッターの内容を必要に応じて変更します:

xTopArr = Array("左上", "", "", "中央上", "", "", "", "")

xButtArr = Array("左下", "", "", "中央下", "", "", "", "")

2. この文字列で背景色のインデックスを変更します:

Cells(I, J).Resize(1, PageSize2).Interior.ColorIndex = 34

Cells(I + PageSize1, J).Resize(1, PageSize2).Interior.ColorIndex = 34


最高のオフィス生産性ツール

🤖 Kutools AI アシスタント: データ分析を革命化する: インテリジェント実行   |  コード生成  |  カスタム数式の作成  |  データを分析しグラフを生成  |  拡張機能を呼び出す
人気の機能: 重複を見つけてハイライトまたはマーキング   |  空白行を削除   |  データを失わずに列またはセルを統合   |   丸める ...
スーパーLOOKUP: 複数条件のVLookup    複数値のVLookup  |   複数シートの検索   |   ファジーマッチ ....
高度なドロップダウンリスト: ドロップダウンリストを迅速に作成   |  依存ドロップダウンリスト   |  マルチセレクトドロップダウンリスト ....
列管理: 特定の数の列を追加  |  列を移動  |  非表示列の可視ステータスを切り替え  |  範囲と列を比較 ...
注目の機能: グリッドフォーカス   |  デザインビュー   |   強化された数式バー    ワークブック & ワークシート管理   |  オートテキスト ライブラリ (Auto Text)   |  日付ピッカー   |  データの統合   |  セルの暗号化/復号化    リストで電子メールを送信   |  スーパーフィルター   |   特殊フィルタ (太字/斜体/取り消し線をフィルタリング...) ...
トップ15のツールセット12 のテキストツール (テキストの追加, 特定の文字を削除, ...)  |  50以上 のグラフ の種類 (ガントチャート, ...)  |  40以上の実用的な 数式 (誕生日に基づいて年齢を計算する, ...)  |  19 の挿入ツール (QRコードの挿入, パスから画像を挿入, ...)  |  12 の変換ツール (単語に変換する, 通貨変換, ...)  |  7 の統合 & セルの分割ツール (高度な行のマージ, セルの分割, ...)  |  ...さらに多く

Kutools for ExcelでExcelスキルを強化し、これまでにない効率を体験してください。 Kutools for Excelは、300以上の高度な機能を提供し、生産性を向上させ、保存時間を節約します。  最も必要な機能を入手するにはここをクリック...


Office TabはOfficeにタブインターフェイスをもたらし、作業を非常に簡単にします

  • Word、Excel、PowerPoint、Publisher、Access、Visio、Projectでタブ付きの編集と読み取りを有効にします。
  • 新しいウィンドウではなく、同じウィンドウの新しいタブで複数のドキュメントを開いて作成します。
  • 生産性を50%向上させ、毎日数百回のマウスクリックを減らします!