📊 Excel VBA Top100
📋

AddHeaderFooter

シート管理

シートにヘッダーとフッターを追加する

🎬 デモGIF準備中

📖 使い方

  1. VBAエディタを開く(Alt + F11)
  2. モジュールを挿入(挿入 > モジュール)
  3. 下記VBAコードをコピー&ペースト
  4. ブック上で実行(Alt + F8 でマクロ選択)
💡 実行例: 実行するとヘッダーとフッターの入力ダイアログが表示され、印刷プレビュー用のヘッダー/フッターが設定される

💻 VBAコード

' AddHeaderFooter
' -----------------
' Macro Name: AddHeaderFooter
' Description: シートにヘッダーとフッターを追加する
' Parameters: なし
' Returns: なし
' Usage: 実行するとヘッダーとフッターの入力ダイアログが表示され、印刷プレビュー用のヘッダー/フッターが設定される
' -----------------

Sub AddHeaderFooter()
    Dim ws As Worksheet
    Dim leftHeader As String
    Dim centerHeader As String
    Dim rightHeader As String
    Dim leftFooter As String
    Dim centerFooter As String
    Dim rightFooter As String
    Dim sheetName As String

    On Error GoTo ErrorHandler

    sheetName = InputBox("ヘッダー/フッターを設定するシート名を入力:", "ヘッダー/フッター設定", ActiveSheet.Name)

    If sheetName = "" Then
        Exit Sub
    End If

    On Error Resume Next
    Set ws = Worksheets(sheetName)
    On Error GoTo ErrorHandler

    If ws Is Nothing Then
        MsgBox "「" & sheetName & "」は存在しません。", vbExclamation
        Exit Sub
    End If

    leftHeader = InputBox("左ヘッダーを入力 (空欄=設定なし):", "ヘッダー設定", ws.PageSetup.LeftHeader)
    If leftHeader = "" Then ws.PageSetup.LeftHeader = ""
    centerHeader = InputBox("中央ヘッダーを入力 (空欄=設定なし):", "ヘッダー設定", ws.PageSetup.CenterHeader)
    If centerHeader = "" Then ws.PageSetup.CenterHeader = ""
    rightHeader = InputBox("右ヘッダーを入力 (空欄=設定なし):", "ヘッダー設定", ws.PageSetup.RightHeader)
    If rightHeader = "" Then ws.PageSetup.RightHeader = ""

    leftFooter = InputBox("左フッターを入力 (空欄=設定なし):", "フッター設定", ws.PageSetup.LeftFooter)
    If leftFooter = "" Then ws.PageSetup.LeftFooter = ""
    centerFooter = InputBox("中央フッターを入力 (空欄=設定なし):", "フッター設定", ws.PageSetup.CenterFooter)
    If centerFooter = "" Then ws.PageSetup.CenterFooter = ""
    rightFooter = InputBox("右フッターを入力 (空欄=設定なし):", "フッター設定", ws.PageSetup.RightFooter)
    If rightFooter = "" Then ws.PageSetup.RightFooter = ""

    If leftHeader <> "" Then ws.PageSetup.LeftHeader = leftHeader
    If centerHeader <> "" Then ws.PageSetup.CenterHeader = centerHeader
    If rightHeader <> "" Then ws.PageSetup.RightHeader = rightHeader
    If leftFooter <> "" Then ws.PageSetup.LeftFooter = leftFooter
    If centerFooter <> "" Then ws.PageSetup.CenterFooter = centerFooter
    If rightFooter <> "" Then ws.PageSetup.RightFooter = rightFooter

    MsgBox "「" & sheetName & "」にヘッダー/フッターを設定しました。" & vbCrLf & "印刷プレビューで確認してください。", vbInformation
    Exit Sub

ErrorHandler:
    MsgBox "エラーが発生しました: " & Err.Description, vbCritical
End Sub