ActveWorkbook.Save
Peter
Wenn ich eine Arbeitsmappe über den normalen Weg (Speichern-Icon im Menü oben) speichere, dann wird auf ein Event zugegriffen im Modul "Diese Arbeistmappe". Dort wird u.a. auf ein Sub zugegriffen, das mir den Schutz der Arbeitmappe und des Tabellenblattes aufhebt, eine Zelle in dem nun ungeschützten Tabellenblatt neu schreibt und danach wird über ein weiteres Sub der Schutz wieder getätigt. Das sieht dann angerissen etwa so aus:
"DieseArbeitsmappe"
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Call Sub SchutzAufheben(Worksheets("Tabelle1"))
Worksheets("Tabelle1").Range("A1").Value = "Hallo"
Call Sub Schutz(Worksheets("Tabelle1"))
End Sub
Die beiden Sub im Modul1 sehen etwa so aus:
Sub SchutzAufheben (ByVal TabBlatt as Worksheet)
ThisWorkbook.Unprotect Password:=Passwort
TabBlatt.Unprotect Password:=Passwort
...
End Sub
Sub Schutz ist quasi ähnlich.
So. Nun habe ich aber einen Knopf auf das Tabellenblatt gelegt, der mit diesem Sub im Modul1 verbunden ist:
Sub KnopfSpeichern()
ActiveWorkbook.Save
End Sub Jetzt bin ich davon ausgegangen, dass dadurch die Prozedur Workbook_BeforeSave von oben abläuft. Tut sie auch. Nur bekomme ich eine Fehlermeldung, wenn etwas in die Zelle eingetragen werden soll.....ich vergaß: die Zelle ist schreibgeschützt. Grund ist, dass das Blatt und die Mappe noch geschützt ist!!!!
Wie kann das sein, trotzdem der gleiche Weg gegangen wird?
P