~設定を元に戻す理由も解説~
Excel VBAでは、シート削除時の確認メッセージを非表示にする方法があります。自動化の際には欠かせないテクニックですが、**「設定を元に戻す理由」**についても理解しておくことが重要です。
目次
1. 基本コード
Application.DisplayAlerts = False
'シート削除などの処理
ActiveSheet.Delete
Application.DisplayAlerts = True
2. ポイント解説
設定 | 説明 |
---|---|
Application.DisplayAlerts = False | Excelからの警告や確認メッセージを表示しない設定 |
Application.DisplayAlerts = True | 警告表示を元に戻す設定 通常はTrueに戻すのを忘れないこと |
3. なぜ元に戻す必要があるのか?
Application.DisplayAlerts = False
を設定すると、すべての警告・確認メッセージが表示されなくなります。
▼ 影響例
- ファイルを上書き保存しても確認されずに強制上書きされる
- 削除や変更操作もすべて無確認で実行される
- 意図しないミスに気付けない
▼ 結果として…
そのまま放置すると、自分のコードだけでなく、手動操作や他のマクロにも影響が出るため、非常に危険です。
4. 実用例(アクティブシート削除)
Sub DeleteActiveSheetNoAlert()
Application.DisplayAlerts = False
ActiveSheet.Delete
Application.DisplayAlerts = True
End Sub
5. 実用例(指定した名前のシート削除)
Sub DeleteSheetByNameNoAlert()
Dim ws As Worksheet
On Error Resume Next
Set ws = ThisWorkbook.Worksheets("Sheet2")
On Error GoTo 0
If Not ws Is Nothing Then
Application.DisplayAlerts = False
ws.Delete
Application.DisplayAlerts = True
End If
End Sub
6. まとめ
✅ ポイント
DisplayAlerts = False
は 自動化に便利- 処理後は必ず True に戻す
- 戻さないと 他の操作に悪影響 を及ぼす
VBAを書く際は、最後に元に戻す ― これが安全・正しい使い方です。
コメント