Registriert seit: 27.04.2014
Version(en): Privat: Office Home & Business 2019 / Arbeit: MS365
Hallo liebes Excelforum,
ich bin auf der Suche nach eine Möglichkeit um eine Datei die mit Schreibschutz-Kennwort geschützt ist wie folgt zu behandeln!
Meine Datei ist Kennwort geschützt und wird standardmässig mit Schreibschutz geöffnet, das heißt ohne Eingabe des Kennworts! Ich möchte in meine Datei einen Button einbauen der mir den Schreibschutz durch Eingabe des Kennwort aufhebt und die Datei dann beschreibbar macht und das gleiche auch wieder zurück mit ein anderer Button!
Also Button1(Datei bearbeiten) und Button2 (Datei schreibgeschützt)!
Ich meine damit keinen Blattschutz o.ä. sonder wirklich, diesen Schreibschutzkennwort den man beim speichern der Datei vergeben kann!
Ist sowas überhaupt möglich?
Für eure Hilfe danke ich im Voraus
VG
Alexandra
Registriert seit: 10.04.2014
Version(en): 2016 + 365
Hi Alexandra,
(12.06.2014, 20:49)cysu11 schrieb: Also Button1(Datei bearbeiten) und Button2 (Datei schreibgeschützt)!
Ich meine damit keinen Blattschutz o.ä. sonder wirklich, diesen Schreibschutzkennwort den man beim speichern der Datei vergeben kann!
Ist sowas überhaupt möglich?
evtl. könnte das (mit VBA) so gelöst werden, daß Du beim Drücken von Button 1 die Datei abspeicherst ohne Passwort und beim Drücken von Button 2 mit Passwort. Dann wäre sie zwischendrin editierbar.
Ich habe das aber noch nie ausprobiert.
Folgende(r) 1 Nutzer sagt Danke an Rabe für diesen Beitrag:1 Nutzer sagt Danke an Rabe für diesen Beitrag 28
• cysu11
Registriert seit: 27.04.2014
Version(en): Privat: Office Home & Business 2019 / Arbeit: MS365
Hallo Ralf,
danke für den Tipp! :)
Habe jetzt ein wenig gebastelt und hinbekommen:
Code: Private Sub CommandButton1_Click()
Application.DisplayAlerts = False
Workbooks.Open Filename:=ThisWorkbook.Path & "\" & "test.xlsm", ReadOnly:=False, Password:="", WriteResPassword:="123"
Application.DisplayAlerts = True
End Sub
Private Sub CommandButton2_Click()
Application.DisplayAlerts = False
ThisWorkbook.SaveAs Filename:=ThisWorkbook.Path & "\" & "test.xlsm", Password:="", WriteResPassword:="123"
Application.DisplayAlerts = True
Workbooks.Open Filename:=ThisWorkbook.Path & "\" & "test.xlsm", ReadOnly:=True
End Sub
Vielen Dank
VG
Alexandra
Registriert seit: 10.04.2014
Version(en): 2016 + 365
12.06.2014, 22:28
(Dieser Beitrag wurde zuletzt bearbeitet: 12.06.2014, 22:30 von Rabe.)
Hi Alexandra,
nun mußt Du aber noch das Passwort abfragen und an das Makro übergeben, sonst kann ja jeder die Datei entschützen per Knopfdruck.
Oder habe ich Deine Codes falsch verstanden?
Registriert seit: 27.04.2014
Version(en): Privat: Office Home & Business 2019 / Arbeit: MS365
12.06.2014, 23:04
(Dieser Beitrag wurde zuletzt bearbeitet: 13.06.2014, 08:37 von Rabe.)
Hallo Ralf,
hier nochmals mein Code:
Code: Option Explicit
Private Sub CommandButton1_Click() ' Editiermodus
Application.DisplayAlerts = False
Workbooks.Open Filename:=ThisWorkbook.Path & "\" & "test.xlsm", ReadOnly:=False, Password:="", WriteResPassword:="123"
Application.DisplayAlerts = True
Range("A1:AA1").Interior.Color = &HFF&
End Sub
Private Sub CommandButton2_Click() ' Viewmodus
Application.DisplayAlerts = False
Range("A1:AA1").Interior.Color = &HFF00&
ThisWorkbook.SaveAs Filename:=ThisWorkbook.Path & "\" & "test.xlsm", Password:="", WriteResPassword:="123"
Application.DisplayAlerts = True
Workbooks.Open Filename:=ThisWorkbook.Path & "\" & "test.xlsm", ReadOnly:=True
End Sub
Dazu zwei Fragen:
1. Wie kann ich das mit dem Kennwort machen?
2. Ich versuchen im Editiermodus den Bereich A1:AA1 rot zu färben, aber irgendwie klappt es nicht und ich weiß nicht warum! Hast du eine Idee?
Danke
VG
Alexandra
Code eingerückt dargestellt
Moderator [Bild: smilie.php?smile_ID=1810]
Registriert seit: 11.04.2014
Version(en): Office 2007
Hallo Alexandra,
(12.06.2014, 23:04)cysu11 schrieb: Ich versuche im Editiermodus den Bereich A1:AA1 rot zu färben, aber irgendwie klappt es nicht
was heißt klappt irgendwie nicht? Gibt es eine Fehlermeldung und wenn ja, wie heißt sie? Wo steht denn der Code?
Gruß Stefan
Win 10 / Office 2016
Registriert seit: 11.04.2014
Version(en): '97 bis 2016; 365
13.06.2014, 09:54
(Dieser Beitrag wurde zuletzt bearbeitet: 14.06.2014, 15:39 von Glausius.)
Hallo Alexandra,
Frage; warum benutzt Du zwei Buttons? Es ginge auch, einen Button zu nutzen und diesen (durch Beschriftung und durch Farben, ob Schutz oder nicht), kenntlich zu machen.
Zitat:nun mußt Du aber noch das Passwort abfragen und an das Makro übergeben, sonst kann ja jeder die Datei entschützen per Knopfdruck.
das ließe sich beispielsweise mit einer InputBox machen. Nachteil: Das Passwort steht im Klartext in der Box.
In einem UserForm kann man einstellen, daß Sternchen (****) angezeigt werden sollen.
________________________________________________________________________
wer aufgibt, ohne es versucht zu haben, gibt einfach nur auf!
Grüße aus Norderstedt, Peter
Registriert seit: 14.04.2014
Version(en): 2003, 2007
Hallo alexandra,
Dein Makro weiß nicht, in welcher Datei und welcher Tabelle es eine Aktion ausführen soll.
so ginge es:
Code: Private Sub CommandButton2_Click() ' Editiermodus
Application.DisplayAlerts = False
With Workbooks.Open(Filename:="C:\Users\Atilla\Desktop" & "\" & "Mappe1.xlsm", ReadOnly:=False, Password:="", WriteResPassword:="123")
Application.DisplayAlerts = True
.Sheets("Tabelle1").Range("A1:AA1").Interior.Color = &HFF&
End With
End Sub
Gruß Atilla
Registriert seit: 27.04.2014
Version(en): Privat: Office Home & Business 2019 / Arbeit: MS365
Hallo Atilla,
bei mir funktioniert es einfach nicht!
Ich habe meine Beispieldatei hochgeladen:
[ Dateiupload bitte im Forum! So geht es: Klick mich!]
Was stimmt da nicht? Und wie kann ich das mit dem Passwort machen?
Lieben Dank
Alexandra
Registriert seit: 15.04.2014
Version(en): Office 2007
(13.06.2014, 17:53)cysu11 schrieb: ...Was stimmt da nicht... Hallo, grad mal neugierig geöffnet
Da ist eine falsche Adresse _open_ drin, schau mal rein
Edit: hier hält der Debugger an
With Workbooks.Open(Filename:="C:\Users\....\downloads" & "\" & "test.xlsm", ReadOnly:=False, Password:="", WriteResPassword:="123")
Edit end
mfg
|