25.07.2016, 16:28
Hallo zusammen,
Ich möchte gerne in einer Arbeitsmappe per Makro alle Blätter mit einem Blattschutz versehen, den man bei Bedarf manuell für einige deaktivieren kann.
Dazu habe ich folgende Makros verwendet:
'==============================
'Blattschutz aktivieren
'==============================
Sub Blattschutz_aktivieren()
Dim ws As Worksheet
For Each ws In Worksheets
ws.Protect
Next ws
End Sub
'==============================
'Blattschutz deaktivieren
'==============================
Sub Blattschutz_deaktivieren()
Worksheets("1").Unprotect
Worksheets("2").Unprotect
Worksheets("3").Unprotect
Worksheets("4").Unprotect
Worksheets("5").Unprotect
End Sub
Bis dahin funktioniert das auch noch ganz wunderbar, jetzt wollte ich noch einbauen, dass beim Schließen der Blattschutz für alle Blätter wieder aktiviert wird.
Dabei habe ich folgendes gefunden:
Sub Workbook_BeforeClose(Cancel As Boolean)
Dim ws As Worksheet
For Each ws In Worksheets
ws.protect
Next ws
End Sub
Leider funktioniert das aber dann nicht für alle Blätter.
Könnt ihr mir bitte helfen? Bin da der totale Neuling (Nutze Excel 2016)
Vielen lieben Dank schon mal!
Hanna
Ich möchte gerne in einer Arbeitsmappe per Makro alle Blätter mit einem Blattschutz versehen, den man bei Bedarf manuell für einige deaktivieren kann.
Dazu habe ich folgende Makros verwendet:
'==============================
'Blattschutz aktivieren
'==============================
Sub Blattschutz_aktivieren()
Dim ws As Worksheet
For Each ws In Worksheets
ws.Protect
Next ws
End Sub
'==============================
'Blattschutz deaktivieren
'==============================
Sub Blattschutz_deaktivieren()
Worksheets("1").Unprotect
Worksheets("2").Unprotect
Worksheets("3").Unprotect
Worksheets("4").Unprotect
Worksheets("5").Unprotect
End Sub
Bis dahin funktioniert das auch noch ganz wunderbar, jetzt wollte ich noch einbauen, dass beim Schließen der Blattschutz für alle Blätter wieder aktiviert wird.
Dabei habe ich folgendes gefunden:
Sub Workbook_BeforeClose(Cancel As Boolean)
Dim ws As Worksheet
For Each ws In Worksheets
ws.protect
Next ws
End Sub
Leider funktioniert das aber dann nicht für alle Blätter.
Könnt ihr mir bitte helfen? Bin da der totale Neuling (Nutze Excel 2016)
Vielen lieben Dank schon mal!
Hanna