Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema InputBox
BildScreenshot zu InputBox InputBox-Seite mit Beispielarbeitsmappe aufrufen

manuelles Speichern bei schreibgeschützter Datei


Betrifft: manuelles Speichern bei schreibgeschützter Datei von: Hans-Jürgen
Geschrieben am: 06.09.2019 11:38:54

Hallo Wissende,

ich bin noch bei meinem Excel-Frontend... Die Datei ist über das entsprechende Windows-Attribut schreibgeschützt.

Nun möchte ich aber für den Admi eine "Hintertür" haben, dass dieser per Tastendruck ein Makro aufruft, welches (nach Passwortabfrage) die Speicherung durchführt.

Ich habe da im Internet schon Schnipsel gefunden und folgendes gebaut:

    Application.DisplayAlerts = False
    
    If InputBox("Passwort") = strPasswort Then
        With ActiveWorkbook
            If .ReadOnly Then
                .ChangeFileAccess Mode:=xlReadWrite
            End If
            ActiveWorkbook.Save
            .ChangeFileAccess Mode:=xlReadOnly
        End With
    End If

    Application.DisplayAlerts = True
Allerdings bekomme ich (trotz ausgeschalteten Alerts) die Nachricht, dass ein anderer User in der Datei ist, aber das muss "ich selber" sein. Ich habe nur die Option der Benachrichtigung. Gibt es dafür eine Lösung?

  

Betrifft: AW: manuelles Speichern bei schreibgeschützter Datei von: Torsten
Geschrieben am: 06.09.2019 11:51:20

Hallo,

hier fehlt ein True

If .ReadOnly = True Then
Gruss Torsten


  

Betrifft: AW: manuelles Speichern bei schreibgeschützter Datei von: Luschi
Geschrieben am: 06.09.2019 12:50:12

Hallo Torsten,

wenn, dann fehlt nur
If .ReadOnly Then
daß '= True' ist doppelt gemoppelt.

Gruß von Luschi
aus klein-Paris


  

Betrifft: noch offen von: Hans-Jürgen
Geschrieben am: 06.09.2019 15:14:59

ich glaube, dass das True hier nicht für den Fehler verantwortlich ist. Oder habe ich da was falsch vertanden?

Hat jemand noch weitere Ideen? (Ich schreibe hier nur, damit ich das als "weiterhin offen" markieren kann)


  

Betrifft: AW: noch offen von: mmat
Geschrieben am: 06.09.2019 16:46:12

Hallo Hans-Jürgen,

zum Verständnis, es gibt unterschiedliche Schreibschutzmechanismen, die hier in Betracht kommen,
a) zum einen den im Betriebssystem (über den Windows-Explorer die Dateieigenschaften setzen)
b) über das Berechtigungssystem von Windows gesteuerte Schreib-Leserechte
c) den Excel-Schreibschutz (Beim Speichern der Mappe die entsprechende Option setzen)
d) weitere ?? ...

Deine Beschreibung liest sich wie Fall a), während das Makro dass du da hast, eher ein Fall c ist.

Wie ist dein Schreibschutz realisiert?

vg, MM


  

Betrifft: AW: noch offen von: Hans-Jürgen
Geschrieben am: 06.09.2019 17:57:23

Hi,

vielen Dank für die Antwort. Ich arbeite nur mit dem Schreibschutz auf Windows-Ebene (Attribut im Explorer).

Das Makro müsste auch dazu passen - meiner Meinung nach wäre deine Variabte c etwas mit "Unprotect". Das meine ich nicht.

Der Zugriff aus dem Makro in die Dateiattribute von Windows klappt an sich ja auch mit diesem Makro. Wenn ich den Schutz setze oder entferne, ändert sich auch das Attribut, welches z.B. auch in der Titelzeile mit [Screibgeschützt] angezeigt wird.

Der Teil, der nicht klappt, ist das Schreiben nach Entfernen des Schreibschutzes. Da hakts noch...


  

Betrifft: AW: manuelles Speichern bei schreibgeschützter Datei von: onur
Geschrieben am: 06.09.2019 19:16:03

Ich verstehe es irgendwie nicht:
"Nun möchte ich aber für den Admi eine "Hintertür" haben, dass dieser per Tastendruck ein Makro aufruft, welches (nach Passwortabfrage) die Speicherung durchführt." - Und alle anderen User dürfen sich die Datei nur angucken?


Beiträge aus dem Excel-Forum zum Thema "manuelles Speichern bei schreibgeschützter Datei"