Hallo,
ich meine da einen grundsätzlichen Fehler zu erkennen:
Du scheinst darauf zu bauen, dass deine User den VBA-Code ausführen:
Ich habe vor ein paar (vielen) Jahren versucht, die User dazu zu zwingen, den VBA-Code auszuführen. Dabei habe ich mich entschieden, alle Tabellenblätter auszublenden, wenn die Datei gespeichert ist, nur eines habe ich eingeblendet, nämlich mit einer Anleitung, wie man VBA aktiviert. Öffnet man die Datei, ohne VBA, wird einem nur die Anleitung angezeigt. Öffnet man mit VBA, wird die Anleitung ausgelbendet und alles andere eingeblendet. Speichert man, wird vor dem Speichern alles ausgeblendet und die Anleitung eingeblendet...
Das war in meinem Fall effektiv. Man kann sicher auch andere Wege gehen. Die Strategie war quasi "die gespeicherte Datei ist nicht bearbeitbar", erst durch beim Öffnen ausgeführter VBA-Code macht die Datei benutzbar.
Bei dir meine ich die Problematik zu sehen, dass jemand die Datei öffnen kann ohne VBA auszuführen und kein Blattschutz gesetzt wird.
Zu deinem Blattschutz-Code: da kann ich dir nicht viel sagen, ich verwende den Blattschutz so gut wie nicht. Ich kann den Code mal "übersetzen", vielleicht findest du selbst den Fehler:
Bei jedem Blatt der Datei, in der der Code steht, den Blattschutz akativieren mit userinterfaceonly=true (ohne Passwort)
nach Passwort fragen
Blatt XYZ der aktiven Datei mit Blattschutz belegen, mit Passwort und szenarios=true
Es kommt darauf an, was du tust: nicht immer ist die aktive Datei auch die Datei, in der der Code steht!
Grüße, Ulrich
|