📘 Excel逆引き事典

【VBA】特定の名前のシートを確認メッセージを出さずに非表示にする方法

日々の業務で特定のシートを頻繁に非表示にしている方も多いでしょう。しかし、毎回「このシートを非表示にしますか?」という確認メッセージが出るのは面倒ですよね。そこで今回は、そのような煩わしい確認メッセージを出さずに、特定の名前のシートを非表示にする方法をお伝えします。

サンプルコード

VBA
Option Explicit
Sub HideSheetWithoutAlert()
    Dim ws As Worksheet
    Application.DisplayAlerts = False ' 確認メッセージを出さない設定
    On Error GoTo ExitHandler ' エラー処理用ラベル
    Set ws = ThisWorkbook.Sheets("シート名")
    If Not ws Is Nothing Then ws.Visible = xlSheetHidden ' 存在する場合、非表示にする
ExitHandler:
    Application.DisplayAlerts = True ' 確認メッセージを再設定
End Sub

よくある質問

Q 元に戻せますか?

A.
VBAの実行結果は「元に戻す」が効きません。必ずバックアップを取ってから実行してください。

Q エラーが出たら?

A.
シート名や列番号が正しいか確認してください。