📊 Excel VBA Top100

RunMacroOnAllSheets

自動化

指定したマクロをブック内の全シートで順番に実行します

🎬 デモGIF準備中

📖 使い方

  1. VBAエディタを開く(Alt + F11)
  2. モジュールを挿入(挿入 > モジュール)
  3. 下記VBAコードをコピー&ペースト
  4. ブック上で実行(Alt + F8 でマクロ選択)
💡 実行例: RunMacroOnAllSheets を実行し、マクロ名を入力します

💻 VBAコード

' RunMacroOnAllSheets
' -----------------
' Macro Name: RunMacroOnAllSheets
' Description: 指定したマクロをブック内の全シートで順番に実行します
' Parameters: なし
' Returns: なし
' Usage: RunMacroOnAllSheets を実行し、マクロ名を入力します
' -----------------

Sub RunMacroOnAllSheets()
    On Error GoTo ErrorHandler

    Dim macroName As String
    Dim ws As Worksheet
    Dim runCount As Long

    macroName = InputBox("全シートで実行するマクロ名を入力してください", "マクロ名")
    If macroName = "" Then Exit Sub

    runCount = 0
    For Each ws In ActiveWorkbook.Worksheets
        ws.Activate
        On Error Resume Next
        Application.Run macroName
        If Err.Number = 0 Then runCount = runCount + 1
        Err.Clear
        On Error GoTo ErrorHandler
    Next ws

    MsgBox runCount & " シートで「" & macroName & "」を実行しました", vbInformation, "完了"

    Exit Sub

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