Excel-AutomatisierungBlattschutz mit Excel-Makro aktivieren

Mit VBA kann der Blattschutz in einer Excel-Arbeitsmappe gesteuert werden. Mit diesen Makro-Befehlen lässt sich für alle Tabellen auf einmal der Blattschutz einschalten und ausschalten.

Mit VBA lässt sich der Blattschutz von Tabellen setzen und aufheben:

  • Der VBA-Befehl in Excel zum Setzen des Blattschutzes heißt Worksheet.Protect.
  • Der Befehl zum Aufheben des Schutzes heißt Worksheet.Unprotect.

Die Protect-Methode wirkt sich nur auf ungeschützte Arbeitsblätter aus. Bei bereits geschützten Arbeitsblättern bleibt die Protect-Methode wirkungslos.

Makro für Blattschutz ohne Kennwort

Mit den folgenden Makros wird der Blattschutz für Tabelle1 ohne Kennwort gesetzt und aufgehoben.

Sub Blattschutz_ein()
Sheets("Tabelle1").Protect
End Sub

Sub Blattschutz_aus()
Sheets("Tabelle1").Unprotect
End Sub

Makro für Blattschutz mit Kennwort

Der Blattschutz kann auch mit Kennwort gesetzt werden. Das Kennwort lautet im folgenden Beispiel „meinPasswort“.

Sub Blattschutz_ein_mit_Passwort()
Sheets("Tabelle1").Protect Password:="meinPasswort"
End Sub

Sub Blattschutz_aus_mit_Passwort()
Sheets("Tabelle1").Unprotect Password:="meinPasswort"
End Sub

Blattschutz für alle Tabellen der Arbeitsmappe

Mit einer For-Schleife wird der Blattschutz für alle Tabellen einer Arbeitsmappe eingeschaltet oder aufgehoben. Im folgenden Beispiel wird der Blattschutz ohne Kennwort verwendet.

Sub Blattschutz_ein_alle_Tabellen()
For Each sheet In ActiveWorkbook.Worksheets sheet.Protect
Next sheet
End Sub

Sub Blattschutz_aus_alle_Tabellen()
For Each sheet In ActiveWorkbook.Worksheets sheet.Unprotect
Next sheet
End Sub

Vorlagen nutzen