Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
840to844
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
840to844
840to844
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Zelleninhalte schützen, aber per VBA änderbar?

Zelleninhalte schützen, aber per VBA änderbar?
31.01.2007 11:48:42
Uwe
Hallo zusammen,
ich möchte gerne das Blatt teilweise gegen Änderungen schützen, aber dennoch Änderungen per VBA zulassen. Konkreter Fall:
1. Einige Felder des Blattes dürfen verändert werden, alle anderen sind mit dem Blattschutz versehen, zugelassen sind nur "Gesperrte/Nicht gesperrte Zellen auswählen".
2. Über ein VBA-Makro werden Teilbereiche (Spalten, Zeilen) automatisch aus-/eingeblendet, über ein anderes Makro die Formatierung einiger Zellen verändert (Hintergrundfarbe von weiß auf rot).
Ich bekomme z.B. den Runtime Error 1004 (Hidden-Eigenschaft) wenn das Makro versucht, geschützte Zellen zu verändern.
Wie kann ich den Schutz für den Anwender beibehalten, aber im VBA zulassen?
Grüße von
Uwe

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zelleninhalte schützen, aber per VBA änderbar?
31.01.2007 11:51:35
ChrisL
Hallo Uwe
Im Makro einfach den Schutz temporär aufheben z.B.
ActiveSheet.Unprotect
' Dein Makro
ActiveSheet.Protect
Gruss
Chris
AW: Zelleninhalte schützen, aber per VBA änderbar?
31.01.2007 11:51:58
Dr.
Hi,
am Anfang des Codes die betreffenden Sheets entsperren und am Ende wieder sperren.
AW: Zelleninhalte schützen, aber per VBA änderbar?
31.01.2007 13:33:10
haw
Hallo Uwe,
aus der Hilfe zu Protect:
UserInterfaceOnly Optionaler Variant-Wert. Wenn True, wird die Benutzeroberfläche, jedoch keine Makros geschützt. Ohne Angabe dieses Arguments gilt der Schutz für Makros und die Benutzeroberfläche.
z.B.
ActiveSheet.Protect UserInterfaceOnly = True
Damit kannst du mit Makros verändern, nicht jedoch in der Tabelle.
Gruß Heinz
Anzeige
@haw: kleine Korrektur,...
31.01.2007 14:24:51
Luc:-?
...Heinz.
Die Hilfe ist hier missverständlich...
Wenn True, wird die Benutzeroberfläche, jedoch keine Makros geschützt sollte besser "wenn True, wird die Benutzeroberfläche geschützt, Änderungen mithilfe von Makros sind aber möglich". Makros wdn dadurch nicht geschützt. Das geschieht durch Passwortvergabe im Editor.
Gruß Luc :-?
AW: Zelleninhalte schützen, aber per VBA änderbar?
31.01.2007 15:23:49
Uwe
Die Kombination mit Protect/Unprotect habe ich probiert:
Worksheets("name").Unprotect ("password")
'Makro
Worksheets("name").Protect ("password")
Allerdings flackert jedes Mal wenn diese Kombination "drankommt" kurz das Worksheet.
Ich vermute, dass bei mehreren Sheets von Excel die Sheets umgeschaltet werden. Wirkt leider sehr unsauber für den User.
"Protect UserInterface Only" muss ich noch testen. Reicht das, wenn es nur einmal beim
Laden/Öffnen des Worksheets ausgeführt wird ?
Grüße von
Uwe
Anzeige
Ja, du musst den Schutz für das Arbeitsblatt...
31.01.2007 17:11:17
Luc:-?
...per Workbook_Open-Ereignis setzen, Uwe.
Dann flackert auch nichts. .UnProtect /.Protect ist die schlechtere Wahl!
Übrigens kannst du Bildschirmflackern mit .ScreenUpdating Aus-/Einschalten verhindern.
Gruß Luc :-?
Alles klar!
01.02.2007 08:49:50
Uwe
Klappt prima, alles bestens!
Vielen Dank an alle!
Grüße von
Uwe

9 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige