エクセルマクロで、特定シートの削除を禁止するVBAコードをご紹介します。
必要なシートを間違えて削除しないようにするプログラムです。
このページのマクロコードは、コピペで使えます。
ぜひお試しください!
特定シートを削除禁止にする
以下のExcelVBAを実行すると、特定シート以外を削除可能にします。
Private Sub Workbook_SheetBeforeDelete(ByVal Sh As Object)
If ActiveSheet.Name = "Sheet3" Then
ActiveWorkbook.Protect Structure:=True
End If
End Sub
Private Sub Workbook_SheetDeactivate(ByVal Sh As Object)
If ActiveSheet.Name <> "Sheet3" Then
ActiveWorkbook.Protect Structure:=False
End If
End Sub
削除禁止シートを削除しようとした場合
削除禁止シート:「Sheet3」シート
削除禁止シートを削除しようとしてみます。
「シートを削除すると元に戻せません。~」とメッセージ表示されるので「削除」をクリックします。
「ブックは保護されています。変更できません。」と表示され、
削除禁止シート「Sheet3」は削除されずに残ります。
・削除禁止シートを削除しようとすると、ブックを保護してシート削除できないようにします。
・削除禁止シート以外がアクティブになった場合、ブック保護を解除してシート削除できるようにします。
VBE画面にて「ThisWorkbook」シートにマクロコードを記述します。
この記事がお役に立ちますと幸いです。
・【エクセルマクロ】シートの追加・削除を自動化まとめ
【エクセルマクロ】シートの追加・削除を自動化:超便利12選
...
「Excel自動化[最強]時短仕事術」
自動化の基礎と時短に役立つテクニック解説書
毎日の定型業務を手際良く行え、大幅な業務効率化を実現!
リンク