Excel ist ein sehr nützliches Programm, um strukturierte Daten zu verwalten und mannigfaltige Berechnungen durchzuführen. Zweifelsohne ist es deswegen auch weit verbreitet und großflächig bei Industrie, Gewerbetreibenden und privaten Haushalten verbreitet. Diese Dokumente lassen sich dann auch prima zwischen den Parteien austauschen. Doch manchmal erhält man eine Datei, deren Tabellenblätter man nicht bearbeiten kann. Es kommt dann eine Fehlermeldung, wie zum Beispiel:
Die Zelle oder das Diagramm, die bzw. das Sie ändern möchten, befindet sich auf einem schreibgeschützten Blatt. Um die Änderung vorzunehmen, heben Sie den Schutz des Blattes auf. Möglicherweise werden Sie aufgefordert, ein Kennwort einzugeben.
Zu blöd nur, wenn man das Kennwort nicht kennt oder vergessen hat und nicht den Excel Blattschutz aufheben kann.
Was ist der Blattschutz von Excel?
Eigentlich ist der Blattschutz eine ziemlich coole Funktion. Damit lässt sich nämlich vermeiden, dass unbeabsichtigte Änderungen an den eingetragenen Daten und Formeln vorgenommen werden. Dies kann auch nützlich sein, wenn man Daten von anderen Einträgen lässt, diese aber nur bestimmte Felder bearbeiten dürfen.
Den Blattschutz kann man in einem Excel-Tabellenblatt einfügen indem man auf den Reiter “Überprüfen” geht und dann auf den Button “Blatt schützen” klickt. Es öffnet sich nun ein Dialog, wo man verschiedene Einstellungen vornehmen kann, um das Excel-Sheet zu schützen. So ist es zum Beispiel möglich nur bestimmte Zellen zu sperren und andere editierbar zu lassen. Oder man kann das Einfügen von Zeilen zulassen, während das Einfügen von Spalten nicht erlaubt wird.
Und wie man sieht, kann auch ein Passwort hinterlegen, um den Blattschutz aufzuheben.
Ist es wirklich möglich, den Excel-Blattschutz aufzuheben?
Stellt sich nur die Frage, ob man diesen passwortgeschützten Blattschutz auch wieder aufheben oder umgehen kann, wenn das Passwort vergessen hat oder der Mitarbeiter, der das Passwort einst mal festgelegt hat, gar nicht mehr in der Firma ist.
Kurze Antwort: Ja, es ist möglich! Man ist nicht auf Gedeih und Verderb einem unbearbeitbarem Excel-Relikt ausgeliefert und man muss auch nicht alles von Hand in eine neue Excel-Tabelle aufwendig abtippen.
Es handelt sich hierbei eher um einen schwachen Schutz; nicht so wie bei einer Verschlüsselung der gesamten Datei, welche nicht so ohne weiteres zu umgehen ist.
3 Tricks zum Aufheben des Blattschutzes
Aus diesem Grund seien hier drei Mögliche Vorgehensweisen vorgestellt, die zum Ziel führen können.
Excel Blattschutz mit PassFab for Excel aufheben
Als erste Vorgehensweise verwenden wir das Programm PassFab for Excel, welches eine integrierte Funktion hat, um den Excel-Blattschutz zu entfernen.
Nachdem man das Programm heruntergeladen und installiert hat, kann man es sofort starten und anwenden ohne irgendwelche zusätzlichen Konfigurationen. Man wählt dann auf der GUI den großen Button “Excel-Bearbeitungseinschränkungen entfernen” aus.
Als nächstes gelangt man dann zum Menü, wo man die betreffende Excel-Datei hinzufügen kann. Dazu klickt man den Plus-Button an woraufhin sich ein Datei-Auswahlmenü öffnet. In diesem navigiert man sich zu der betreffenden Excel-Datei und wählt diese aus.
Einmal ausgewählt erscheint die Excel-Datei im nächsten Schritt einschließlich eines “Entfernen”-Button. Hier bitte nicht in die Irre leiten lassen. Beim Klick auf diesen Button wird nicht die Datei entfernt. Mit klick auf diesem Button wird dann der Blattschutz entfernt.
Wenn das Aufheben des Blattschutzes erfolgreich war, erscheint der Button “Passwort-Ordner öffnen”. Diesen also zum Abschluss noch einmal anklicken.
Es öffnet sich abschließend der Windows-Explorer unter dem Verzeichnispfad, wo die neue Excel-Datei ohne Blattschutz abgelegt ist. Diese Excel-Datei kann man nun ohne Probleme weiter vollständig bearbeiten, umbenennen oder in ein anderes Verzeichnis verschieben.
Für den ganzen Prozess benötigt man keine 5 Minuten.
Excel Blattschutz mit 7-Zip oder WinRar aufheben
Diese Vorgehensweise funktioniert, wenn die Excel-Datei als *.xlsx gespeichert ist. Dazu muss man wissen, dass es sich bei *.xlsx-Dateien eigentlich um mehrere Dateien handelt, die gezippt sind.
Dazu kopiert man sich am besten die Excel-Datei mit dem Blattschutz und benennt diese in eine Zip-Datei um. Als wenn vorher die Datei “MeinExcelDatei.xlsx” hieß, muss sie dann “MeinExcelDatei.zip” heißen.
Die neuen zip-Ordner öffnet man dann mit einem Archivierungsprogramm wie 7-zip oder WinRar.
Dort navigiert man dann über die Ordner “xl” ➤ “worksheets”. In dem Ordner “worksheets” sind alle Dateien zu den einzelnen Tabellenblättern abgelegt. Dort muss man sich nun das Tabellenblatt heraussuchen, für welches man den Blattschutz entfernen möchte. In unserem Beispiel ist es sheet1.xml.
Man sieht also, dass es sich bei den einzelnen Tabellenblättern um einfache XML-Dateien handelt, die man mit einem Texteditor öffnen und bearbeiten kann.
Dazu kopiert bzw. entpackt man sich die Datei “sheet1.xml” und legt diese an geeigneter Stelle ab. In WinRar geht das einfach über Kopieren & Einfügen. Nun öffnet man die Datei mit einem Texteditor.
Im Texteditor sucht man nach einem XML-Tag, der wie folgt aussieht:
<sheetProtection password=”DD01″ sheet=”1″ objects=”1″ scenarios=”1″/>
Dies Passage muss komplett gelöscht werden.
Danach kopiert man “sheet1.xml” zurück ins Zip-Archiv und schließt WinRar oder 7-Zip. Jetzt muss man nur noch die zip-Datei wieder zurück umbenennen in eine xlsx-Datei und schon ist der Blattschutz entfernt.
Excel Blattschutz mit VBA-Code aufheben
Mit VBA (Visual Basic for Application) kann man ebenfalls versuchen, den Blattschutz aufzuheben. Eine mögliche Vorgehensweise zeigt der nachfolgende Code.
Sub NoProtection() ActiveSheet.Unprotect myPassword End Sub
ActiveSheet ist dabei das Objekt zum gerade aktivierten Tabellenblatt und Unprotect ist eine VBA-Methode, um den Passwortschutz zu entfernen. Wie man aber sieht benötigt man hier das Passwort, welches als Parameter übergeben wird. Damit eignet sich diese Vorgehensweise nicht, wenn man das Passwort gar nicht mehr weiß.
Es wäre auch möglich die oben beschriebene Methode mit dem Ändern der Zip-Datei in VBA nachzuprogrammieren und dann die <sheetProtection> aus der xml-Datei zu entfernen. Diese wäre aber ein sehr langes und aufwendiges VBA-Programm, welches an dieser Stelle zu weit führen würden.
Bei älteren Excel-Versionen mit xls-Dateien kann man sich zunutze machen, dass für die Verschlüsselung noch ein sehr schwacher Algorithmus verwendet wird, der den Passwort Hashwert in nur 4 Zeichen speichert. Da der Hash-Wert so kurz ist, gibt es viele Passwörter, die denselben Hashwert erzeugen und man kommt durch Probieren mehrerer Passwörter in vertretbarer Zeit zum Ziel. Ein VBA-Algorithmus zum Ausprobieren mehrerer Passwörter kann wie folgt aussehen:
Sub NoProtection() On Error Resume Next For a = 65 To 66 For b = 65 To 66 For c = 65 To 66 For d = 65 To 66 For e = 65 To 66 For f = 65 To 66 For g = 65 To 66 For h = 65 To 66 For i = 65 To 66 For j = 65 To 66 For k = 65 To 66 For l = 32 To 126 ActiveSheet.Unprotect Chr(a) & Chr(b) & Chr(c) & Chr(d) & Chr(e) & Chr(f) & Chr(g) & Chr(h) & Chr(i) & Chr(j) & Chr(k) & Chr(l) Next l Next k Next j Next i Next h Next g Next f Next e Next d Next c Next b Next a MsgBox "Blattschutz erfolgreich aufgehoben." End Sub
Man sieht auch hier wieder die schon bekannte Unprotect-Methode. Nur werden in diesem Fall verschiedene For-Schleifen durchlaufen, wodurch mit der Chr-Funktion verschiedene Passwörter ausprobiert werden.
Fazit
Man sieht jeder dieser 3 Tricks hat seine eigenen Herangehensweisen und auch Vorteile für den entsprechenden Anwendungsfall. Bei VBA muss man erstmal viel Arbeit in die Programmierung und ins Testen stecken bevor es richtig funktioniert. Bei der Methode über das Zip-Archiv ist man da schon schneller unterwegs, muss aber auch noch viele Teilschritte machen und sich mit kryptischem XML-Code herumschlagen. Besser ist da PassFab for Excel, welchen einem all diese Arbeit abnimmt und in weniger als 5 Minuten zum Ziel führt. Damit ist PassFab for Excel ein kleines aber wertvolle Tool zugeschnitten darauf schnell und einfach den Blattschutz in Excel aufzuheben.