Microsoft Excel

Herbers Excel/VBA-Archiv

freigegebene Arbeitsmappe entschützen | Herbers Excel-Forum


Betrifft: freigegebene Arbeitsmappe entschützen von: Chris
Geschrieben am: 25.01.2010 17:02:09

Servus Forum,

wie kann ich bei einer unter "Arbeitsmappe schützen und freigeben" mit Passwort ( ist bekannt) geschützten Datei die Freigabe mit VBA aufheben, also den Schutz der freigegebenen Arbeitsmappe ?

Schonmal 1000Dank

Gruß

Chris

  

Betrifft: AW: freigegebene Arbeitsmappe entschützen von: mumpel
Geschrieben am: 25.01.2010 17:38:28

Hallo!

Sub FreigabeAufheben()
ActiveWorkbook.UnprotectSharing sharingPassword:="DeinKennwort"
End Sub

Code eingefügt mit VBA in HTML 2.0

Gruß, René


  

Betrifft: AW: freigegebene Arbeitsmappe entschützen von: Chris
Geschrieben am: 25.01.2010 18:20:46

Servus Mumpel,

danke funktioniert. Das erneute Schützen allerdings funktioniert nicht.

Sub Freigabe()
ActiveWorkbook.ProtectSharing sharingPassword:="MeinPasswort"
End Sub
führt zu einem Bug ' Laufzeitfehler 5' Ungültiger Prozeduraufruf oder ungültiges Argument!
Sub Freigabe()
ActiveWorkbook.ProtectSharing ActiveWorkbook.Name, "MeinPasswort"
End Sub
führt zwar zur Freigabe, aber ohne Passwortschutz.

Gibt's da einen speziellen Kniff ?

Gruß

Chris


  

Betrifft: AW: noch offen owT. von: Chris
Geschrieben am: 25.01.2010 18:21:13

.


  

Betrifft: AW: noch offen owT. von: Nepumuk
Geschrieben am: 25.01.2010 18:48:36

Hallo Chris,

schau gefälligst in die Hilfe, da steht es dick und breit drin. Das Kennwort welches du setzt hat mit dem Freigabekennwort nichts zu tun.

Ausdruck.UnprotectSharing(SharingPassword)

Ausdruck.ProtectSharing(Filename, Password, WriteResPassword, ReadOnlyRecommended, CreateBackup, SharingPassword)

Gruß
Nepumuk


  

Betrifft: AW: noch offen owT. von: Chris
Geschrieben am: 25.01.2010 19:33:45

Servus Nepumuk,

das Beispiel in der Hilfe kannst du in die Tonne treten, weils nicht funktioniert, selbst wenn ich wksOne als Workbook deklariere (dann gehen wenigstens die Inputboxen).

Außerdem schrieb ich bereits:

Sub Freigabe()
  ActiveWorkbook.ProtectSharing sharingPassword:="MeinPasswort"
  End Sub
geht auch nicht und das auch nicht
Sub z()
ActiveWorkbook.ProtectSharing ActiveWorkbook.Name, False, False, False, False, "MeinPasswort"
End Sub
wohingegen
Sub z()
ActiveWorkbook.ProtectSharing Filename:=Activeworkbbok.Name
End Sub
alleine funktioniert, nur eben nicht mit Passwort.

Ich hab leider keine Ahnung, warum das nicht geht, obwohl ich jetzt ziemlich viele Varianten durchgespielt habe, daher eben auch meine Frage.

Gruß

Chris


  

Betrifft: AW: noch offen owT. von: Nepumuk
Geschrieben am: 25.01.2010 19:52:30

Hallo,

na so schwer ist das doch auch wieder nicht. Oder?

Public Sub Beispiel()
    With ThisWorkbook
        .ProtectSharing Filename:=.Name, SharingPassword:="MeinPasswort"
    End With
End Sub

Gruß
Nepumuk


  

Betrifft: AW: noch offen owT. von: mumpel
Geschrieben am: 25.01.2010 19:53:55

Nur 36 Sekunden trennen uns. ;-)


  

Betrifft: AW: Danke, aber... von: Chris
Geschrieben am: 25.01.2010 20:20:09

Servus ihr beiden,

danke für die richtige Syntax, aber bei mir kommt trotzdem Laufzeitfehler 5.

Scheint wohl an meinem Rechner zu liegen.

Gruß

Chris


  

Betrifft: AW: Danke, aber... von: mumpel
Geschrieben am: 25.01.2010 21:03:58

Du scheinst ein generelles Problem mit Deinem Office zu haben. Bei mir funktioniert der Code fehlerfrei. Und mein Code, in dem diese Zeilen vorhanden sind, ist sehr viel komplexer als die eine Zeile hier im Beispielcode. Nachvollziehen kann ich Dein Problem aber nicht. Und dass es am Rechner liegt halte ich für ein Gerücht. ;-) Wird wohl eher an Deiner Officeinstallation liegen.


  

Betrifft: AW: Danke, aber... von: Chris
Geschrieben am: 26.01.2010 10:06:51

Servus,

ich habe die Ursache entdeckt. Mein Office (Rechner) macht keine Probleme, es ist die Datei selbst gewesen, mit der ich es probiert habe.

Gruß

Chris


  

Betrifft: AW: noch offen owT. von: mumpel
Geschrieben am: 25.01.2010 19:53:06

Das kann auch nicht gehen weil Deine Syntax falsch ist. Das freigabekennwort kann nur gesetzt werden wenn gleichzeitig gespeichert wird. Ohne sofortige Speicherung wird das nichts. gespeichert wird beim Ausführen des makros automatisch.

Sub FreigabekennwortEinschalten()
Application.DisplayAlerts = False
ActiveWorkbook.ProtectSharing Filename:=ActiveWorkbook.FullName, sharingPassword:="DeinKennwort"
Application.DisplayAlerts = True
End Sub
Code eingefügt mit VBA in HTML 2.0


Beiträge aus den Excel-Beispielen zum Thema "freigegebene Arbeitsmappe entschützen"