Anzeige
Archiv - Navigation
420to424
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
420to424
420to424
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

nicht korrekter Blattschutz nach Öffnen

nicht korrekter Blattschutz nach Öffnen
Oberschlumpf
Hallo VBA-Experten
und natürlich auch Hallo an alle Anderen
Ich habe dieses Problem:
Szenario:
---------
Einem Tabellenblatt wird im Open-Ereignis wie folgt der Blattschutz entfernt, damit während der "Arbeitszeit" keine Probs wegen Blattschutz auftreten:
ActiveSheet.Unprotect Password:="passwort"
Nachdem die Initialisierungsprozesse und alle notwendigen, nach dem Öffnen immer wieder auftretenden, Änderungen durchgeführt sind, erfolgt der Blattschutz mit folgenden Parametern:
ActiveSheet.Protect Password:="passwort", DrawingObjects:=True, Contents:=True, Scenarios:=False _
, AllowFormattingCells:=True
ActiveSheet.EnableSelection = xlUnlockedCells
(auch nur die Zeile " ActiveSheet.Protect Password:="passwort" ", ohne Parameter führt zum gleichen Fehler)
erwünschtes Ziel:
-----------------
Es soll dieses mit Blattschutz versehene Blatt angezeigt werden, und es sollen Eingaben nur in den nicht geschützten Zellen erfolgen, und auch das Anklicken geschützter Zellen soll nicht möglich sein.
aktueller Status:
-----------------
Nach dem Öffnen der Datei hat das besagte Blatt 100%-Blattschutz. Das heißt, weder das Anklicken irgendeiner Zelle, noch irgendeine Dateneingabe ist möglich.
Nur wenn ich per extra-Makro den Blattschutz entferne und eben mit den obigen Parametern wieder hinzufüge, habe ich den Zustand, wie unter "erwünschtes Ziel" beschrieben.
------------------------------------------------------
Hat jemand vielleicht, hoffentlich eine Idee, einen Vorschlag/Denkansatz, wie ich dieses Problem lösen kann?
Vielen Dank schon mal an dieses super Forum.
Ciao
Thorsten

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
Nachtrag
Oberschlumpf
Hallo noch mal
habe noch vergessen zu erwähnen, dass im Debug-Modus alles genau so läuft, wie ich es haben möchte. Nur, wenn ich das Makro ohne "hinzugucken" durchlaufen lasse, erscheint der beschriebene Fehler.
Ciao
Thorsten
AW: Nachtrag
Ulf
Welcher Fehler tritt denn nun eigentlich auf?
Ulf
AW: Nachtrag
Oberschlumpf
Hi Ulf
Wenn ich das mAkro durchlaufen lasse, ohne zu debuggen, dann erhält das Tabellenblatt vollen Blattschutz. Weder Eingaben, noch das Anklicken einer Zelle ist möglich.
Wenn ich das Makro während des Durchlaufs debugge, dann erfolgt der Blattschutz so, wie es sein soll.
Nur die nicht geschützten Zellen können angewählt werden, und Einträge sind auch möglich.
Ciao
Thorsten
Anzeige
AW: Nachtrag
Ulf
Lad mal hoch das Teil.
Ulf
AW: Nachtrag
Oberschlumpf
Hi Ulf
Sorry, das geht nicht, da ziemlich private Einträge.
Auch mit Bsp-Daten nicht möglich, da die Struktur schon den Inhalt verrät, und eine Strukturüberarbeitung leider zu viel Aufwand machen würde.
Schade, ich dachte, eine Lösung wäre auch so möglich.
Dann muss ich halt allein weiter tüfteln :-)
Trotzdem Danke an Dich.
Ciao
Thorsten
AW: Nachtrag
Ulf
Es geht dir doch nur um den Schutz, da müssen gar keine Inhalte
sein, kann alles leer sein.
Ulf
AW: Nachtrag
Matthias
Hallo Thorsten,
die Struktur verrät den Inhalt... das macht mich neugierig ;-)
Also dein angegebener Code läuft bei meinem Rechner einwandfrei.
Nach Ausführung ist es genau wie es sein soll, nur die nicht geschützten Zellen sind auswählbar und veränderbar.
Vielleicht ist ja an deinem Initialisierungsprozess was faul.
Er scheint den Schutz bei allen Zellen zu aktivieren.
So was wie
Cells.Locked = True

Schau doch mal dahingehend deinen Code an. Vieleicht findest du was...
Gruß Matthias
Anzeige
AW: Nachtrag
28.04.2004 01:05:40
Oberschlumpf
Hi Matthias
Ja, Du hast nicht ganz Unrecht mit Deiner Vermutung.
Es gibt eine Befehlsfolge
ActiveSheet.Protect Password:="passwort", DrawingObjects:=True, Contents:=True, Scenarios:=False
ActiveSheet.EnableSelection = xlNoSelection
wobei die 2. Zeile von der Auswirkung wohl dem entspricht, was Du geschrieben hattest.
Aber diese Zeile wird nur 1x nach Öffnen der Datei aufgerufen (Open-Ereignis), und zwar dann, wenn sich der Monat geändert hat.
In diesem Fall wird dann das aktuelle Blatt erst kopiert und dann mit 100%-Blattschutz versehen, damit zwar noch eine Ansicht aber keine Änderungsmöglichkeit gegeben ist.
Und wenn Monat eben nicht geändert, dann wird per If-Then in einen anderen Bereich verzweigt, was auch super funktioniert.
Ciao
Thorsten
P.S. vielleicht versuch ich doch mal eine Bsp-Datei zu erstellen
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige