Microsoft Excel

Herbers Excel/VBA-Archiv

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

Alter Passwortschutz

Betrifft: Alter Passwortschutz von: Martin Walter
Geschrieben am: 13.09.2004 13:22:36

Hi,

ich möchte von älteren Excel-Dateien den Passwortschutz entfernen. Wenn ich die Dateien öffne, dann kommt ein Dialog 'Kennwort: Datei.XLS wurde schreibgeschützt von ... . '

Wenn ich unter VBA unter 'Projekte' auf die Mappe klicke und mir mittels 'F4' die Eigenschaften anzeigen lasse, dann ist dort unter 'Password' und 'WritePassword' ein Eintrag zu finden.

Mittels eines Kurzmakros versuchte ich, den Passwortschutz einer dieser Dateien mittels 'ActiveWorkbook.Password = False' und 'ActiveWorkbook.WritePassword = False' zu löschen mit dem Erfolg, daß die Datei beim Öffnen mit einem anderen Dialog wieder nach einem Password fragt. Leider funzt aber weder das alte noch ein leeres Passwort. Mit anderen Worten: ich kann die Datei jetzt gar nicht mehr öffnen...

Wie kann ich die eine verhunzte Datei wieder öffnen?

Wie bekomme ich den Schutz bei den anderen Dateien wieder weg? Im Explorer wird mir für die Datei kein aktiver Schreibschutz angezeigt und unter Excel steht bei 'Extras - Schutz' nix wie '...schutz aufheben'.

Danke schon mal...

Martin

  


Betrifft: AW: Alter Passwortschutz von: Klexy
Geschrieben am: 13.09.2004 16:12:18

Laß das drüberlaufen. Dann ist gar kein Blattschutz mehr drauf

Sub Blattschutz_löschen()
  On Error Resume Next
  For i = 65 To 66
    For j = 65 To 66
      For k = 65 To 66
        For l = 65 To 66
          For m = 65 To 66
            For n = 65 To 66
              For o = 65 To 66
                For p = 65 To 66
                  For q = 65 To 66
                    For r = 65 To 66
                      For s = 65 To 66
                        For t = 32 To 126

ActiveSheet.Unprotect Chr(i) & Chr(j) & Chr(k) & Chr(l) & Chr(m) & _
    Chr(n) & Chr(o) & Chr(p) & Chr(q) & Chr(r) & Chr(s) & Chr(t)

                        Next t
                      Next s
                    Next r
                  Next q
                Next p
              Next o
            Next n
          Next m
        Next l
      Next k
    Next j
  Next i
Range("A2").Select
  MsgBox "Fertig"
End Sub