Microsoft Excel

Herbers Excel/VBA-Archiv

Protect /unprotect von Arbeitsmappen

Betrifft: Protect /unprotect von Arbeitsmappen von: Thomas
Geschrieben am: 15.08.2004 19:53:57

Mal eine Freage an die Profis,

wie funktioniert protect/unprotect mit VBA?

Welche Befehlszeilen muß man da schreiben?

Danke im Vorraus

  


Betrifft: AW: Protect /unprotect von Arbeitsmappen von: Ramses
Geschrieben am: 15.08.2004 20:00:37

Hallo

Glorreiche Antwort bei "VBA gut" :-)

Extras - Makro - Makro aufzeichnen
Blatt schützen
Aufzeichnung beenden

VB-Editor starten und gucken :-))

Gruss Rainer


  


Betrifft: Muss jetzt mal sein :-) von: Michael
Geschrieben am: 15.08.2004 21:35:56

Ich finde es immer wieder "amüsierend".
Einfache Fragen werden "oft" mit Verweis auf den Recorder beantwortet - klar, geht auch.

Wenn dann aber anschliessend ein weiter entwickelter Code (der u.a. mit Recorder zusammengebastelt wurde) hier im Forum steht, heisst es immer:

auf SELECT kann größtenteils verzichtet werden!!!

Natürlich kann man das - aber der Recorder macht es halt nur so...

Gruß
Michael


  


Betrifft: Klar.... von: Ramses
Geschrieben am: 15.08.2004 22:00:53

Hallo Michael

Es gibt Momente, da interpretiere ich solche Fragen ganze einfach als Scherzfrage :-)

Bei "VBA-Gut" setze ich ein gewissen Grundwissen voraus, und dazu gehört die Protect-Methode und die Verwendung des Rekorders ganz einfach dazu.
Wenn ich etwas nciht weiss, dann zeichne ich es mir auf, und schaue es mir an.
Bei "VBA gut" kann ich mir den Rest dann selbst zusammenzimmern. :-)

Der Rest sollte sich dann doch wohl von selbst erklären, ganz abgesehen davon dass die VBA-Online Hilfe wesentlich besser ist, als ihr Ruf.

Allein der Suchbegriff "Protect", nachdem er fragt, bringt folgendes zu Tage:

-----------------------------------


Schützt ein Arbeitsblatt, damit es nicht geändert werden kann.

Ausdruck.Protect(Password, DrawingObjects, Contents, Scenarios, UserInterfaceOnly, AllowFormattingCells, AllowFormattingColumns, AllowFormattingRows, AllowInsertingColumns, AllowInsertingRows, AllowInsertingHyperlinks, AllowDeletingColumns, AllowDeletingRows, AllowSorting, AllowFiltering, AllowUsingPivotTables)
Ausdruck Erforderlich. Ein Ausdruck, der ein Worksheet-Objekt zurückgibt.

Password Optionaler Variant-Wert. Eine Zeichenfolge, die ein von Groß-/Kleinschreibung abhängiges Kennwort für das Arbeitsblatt oder die Arbeitsmappe festlegt. Wenn Sie dieses Argument weglassen, kann der Schutz des Arbeitsblattes oder der Arbeitsmappe ohne Angabe eines Kennwortes aufgehoben werden. Weisen Sie dagegen ein Kennwort zu, muss das Kennwort angegeben werden, um den Schutz des Arbeitsblattes oder der Arbeitsmappe aufzuheben. Falls Sie das Kennwort vergessen, können Sie den Schutz des Arbeitsblattes oder der Arbeitsmappe nicht wieder aufheben. Sie sollten daher eine Liste Ihrer Kennwörter und der zugehörigen Dateinamen an einem sicheren Ort aufbewahren.

DrawingObjects Optionaler Variant-Wert. Wenn True, werden Formen geschützt. Die Voreinstellung ist False.

Contents Optionaler Variant-Wert. Wenn True, wird der Inhalt geschützt. Bei einem Diagramm wird das gesamte Diagramm geschützt. Bei einem Arbeitsblatt werden die gesperrten Zellen geschützt. Die Voreinstellung ist True.

Scenarios Optionaler Variant-Wert. Wenn True, werden Szenarios geschützt. Das Argument gilt nur für Arbeitsmappen. Die Voreinstellung ist True.

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.

AllowFormattingCells Optionaler Variant-Wert. True ermöglicht es dem Benutzer, jede Zelle eines geschützten Arbeitsblattes zu formatieren. Der Standardwert ist False.

AllowFormattingColumns Optionaler Variant-Wert. True ermöglicht es dem Benutzer, jede Spalte eines geschützten Arbeitsblattes zu formatieren. Der Standardwert ist False.

AllowFormattingRows Optionaler Variant-Wert. True ermöglicht es dem Benutzer, jede Zeile eines geschützten Arbeitsblattes zu formatieren. Der Standardwert ist False.

AllowInsertingColumns Optionaler Variant-Wert. True ermöglicht es dem Benutzer, Spalten in ein geschütztes Arbeitsblatt einzufügen. Der Standardwert ist False.

AllowInsertingRows Optionaler Variant-Wert. True ermöglicht es dem Benutzer, Zeilen in ein geschütztes Arbeitsblatt einzufügen. Der Standardwert ist False.

AllowInsertingHyperlinks Optionaler Variant-Wert. True ermöglicht es dem Benutzer, Hyperlinks in ein geschütztes Arbeitsblatt einzufügen. Der Standardwert ist False.

AllowDeletingColumns Optionaler Variant-Wert. True ermöglicht es dem Benutzer, Spalten im geschützten Arbeitsblatt zu löschen, wobei keine Zelle in der zu löschenden Spalte gesperrt ist. Der Standardwert ist False.

AllowDeletingRows Optionaler Variant-Wert. True ermöglicht es dem Benutzer, Zeilen im geschützten Arbeitsblatt zu löschen, wobei keine Zelle in der zu löschenden Zeile gesperrt ist. Der Standardwert ist False.

AllowSorting Optionaler Variant-Wert. True ermöglicht es dem Benutzer, für das geschützte Arbeitsblatt eine Sortierung durchzuführen. Für jede Zelle im Sortierbereich muss die Sperre oder der Schutz aufgehoben werden. Der Standardwert ist False.

AllowFiltering Optionaler Variant-Wert. True ermöglicht es dem Benutzer, Filter für das geschützte Arbeitsblatt festzulegen. Die Benutzer können Filterkriterien ändern, jedoch keinen AutoFilter aktivieren oder deaktivieren. Die Benutzer können Filter für einen vorhandenen AutoFilter festlegen. Der Standardwert ist False.

AllowUsingPivotTables Optionaler Variant-Wert. True ermöglicht es dem Benutzer, PivotTable-Berichte für das geschützte Arbeitsblatt zu verwenden. Der Standardwert ist False.

Anmerkung
Wenn Sie die Protect-Methode mit dem auf True gesetzten UserInterfaceOnly-Argument bei einem Arbeitsblatt anwenden und dann die Arbeitsmappe speichern, ist bei erneutem Öffnen der Arbeitsmappe das gesamte Arbeitsblatt (und nicht nur die Oberfläche) geschützt. Um den Schutz der Benutzeroberfläche nach Öffnen der Arbeitsmappe erneut zu aktivieren, müssen Sie wieder die Protect-Methode mit dem auf True gesetzten UserInterfaceOnly anwenden.

Wenn Änderungen an einem geschützten Arbeitsblatt durchgeführt werden sollen, ist es möglich, die Protect-Methode zu verwenden, wenn das Kennwort bereitgestellt wird. Eine weitere Möglichkeit besteht darin, den Schutz für das Arbeitsblatt aufzuheben, um dann die erforderlichen Änderungen durchzuführen und anschließend das Arbeitsblatt wieder zu schützen.

Anmerkung 'Ungeschützt' bedeutet, dass die Zelle möglicherweise gesperrt (Dialogfeld Zellen formatieren), aber in einem Bereich enthalten ist, der im Dialogfeld Benutzerberechtigungen zum Bearbeiten von Bereichen definiert wurde, und der Benutzer den Schutz für den Bereich mit einem Kennwort aufgehoben oder mit Hilfe von NT-Berechtigungen überprüft hat.


-------------------------


Und dieses Beispiel

Sub ProtectSheet()
    ActiveSheet.Protect Scenarios:=True, UserInterfaceOnly:=True
End Sub



Ich denke,... alleine dadurch hätte sich die Frage bereits erübrigt :-))

Gruss Rainer


  


Betrifft: AW: Protect /unprotect von Arbeitsmappen von: PeterW
Geschrieben am: 15.08.2004 20:14:48

Hallo Thomas,

Alternative zum von Rainer beschriebenen Weg: klicke oben im Forum auf Services, dann Recherche und gib als Suchbegriff Blattschutz VBA ein. Da werden Sie geholfen. ;-)

Gruß
Peter


 

Beiträge aus den Excel-Beispielen zum Thema "Protect /unprotect von Arbeitsmappen"