![]() |
||
![]() |
Speichern einer Arbeitsmappe verhindernSie wollen den Zugriff auf eine Excel-Arbeitsmappe so beschrΣnken, dass andere Benutzer zwar auf die Datei zugreifen dⁿrfen, aber den Inhalt nicht Σndern k÷nnen. Eine Sicherung per Passwort hilft in diesem Fall nicht weiter. Sie suchen eine andere L÷sung. Den gewⁿnschten Effekt erzielen Sie am besten mit einem kurzen Ereignismakro. ╓ffnen Sie dazu die betreffende Arbeitsmappe und fⁿhren Sie den Befehl ╗Extras | Makro | Visual Basic-Editor½ aus. Im VBA-Editor wΣhlen Sie ╗Ansicht | Projektexplorer½ und klicken dann doppelt auf den Eintrag ╗Diese Arbeitsmappe½. Nun geben Sie im Code-Fenster folgende Makrozeilen ein: Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean) Cancel = True End Sub Dadurch wird jeder Speicherversuch sofort abgebrochen. Damit Sie selbst ─nderungen an der Datei vornehmen k÷nnen, mⁿssen Sie sich deshalb noch eine Hintertⁿr einbauen. Lassen Sie dazu zum Beispiel vom Makro den Wert einer bestimmten Zelle testen. Nur wenn in der Zelle die richtige Geheimzahl steht, ist das Speichern m÷glich. Bevor gespeichert wird, muss das Makro die eingegebene Geheimzahl natⁿrlich wieder l÷schen. Ansonsten wⁿrde der nΣchste Benutzer den Schutz problemlos knacken. Geben Sie folgende Zeilen in das Makro ein: If Sheets(äTabelle1ô).Cells(100,1).Value <> 333 Then Cancel = True End If Sheets(äTabelle1ô).Cells(100, 1) = äô In diesem Beispiel testet das Makro den Wert der Zelle ╗A100½ aus ╗Tabelle1½. Nur wenn dort ╗333½ steht, k÷nnen Sie die Tabelle speichern. In der letzten Makrozeile wird der Wert der Zelle wieder gel÷scht. Fⁿr einen Anwender, der die Geheimnummer nicht kennt, bleiben alle Speicherversuche erfolglos. ! Achtung: Diese Sperre wird umgangen, wenn beim ╓ffnen der Arbeitsmappe die Makros deaktiviert werden. |
![]() |