Devarajan geriet in eine Situation, in der eine Arbeitsmappe beschädigt wurde, aber er wollte das mit der Arbeitsmappe verknüpfte Makromodul wiederherstellen. (Die Makros stellten ziemlich viel Entwicklungszeit dar.)

Devarajan fragte sich, wie das Modul wiederhergestellt werden könnte.

Die Antwort hängt zu einem großen Teil davon ab, wie beschädigt die Arbeitsmappe tatsächlich ist und wo sich die Beschädigung in der Arbeitsmappe befindet. Es wurde viel darüber geschrieben, wie beschädigte Arbeitsmappen wiederhergestellt werden können. Die folgenden Ressourcen sind in diesem Zusammenhang von Interesse:

http://support.microsoft.com/kb/142117 (for Excel 97)

http://support.microsoft.com/kb/179871 (for Excel 2000)

http://support.microsoft.com/kb/820741 (for Excel 2002 and 2003)

http://www.jkp-ads.com/Articles/CorruptFiles.asp

Die meisten dieser Seiten beziehen sich speziell auf die Wiederherstellung von Daten, nicht auf die Wiederherstellung der Makros in einem Modul, das einer Arbeitsmappe zugeordnet ist. (Es ist interessant, dass die Microsoft Knowledge Base keine Artikel zum Wiederherstellen von Daten aus einer beschädigten Excel 2007-Arbeitsmappe enthält. Vielleicht wird eine mit der Zeit kommen.) Eine Sache, die Sie versuchen könnten, um Ihre Makros zu erhalten, ist die folgende:

  1. Öffnen Sie Excel, aber nicht die Problemarbeitsmappe.

  2. Stellen Sie den Berechnungsmodus auf manuell ein (Extras | Optionen | Registerkarte Berechnung | Manuell).

  3. Stellen Sie die Sicherheitseinstellung auf Hoch (Extras | Makro | Sicherheit | Hoch).

  4. Öffnen Sie die problematische Arbeitsmappe. Wenn es erfolgreich geöffnet wird, sollte ein Hinweis angezeigt werden, dass die Makros deaktiviert wurden. (Wenn die Arbeitsmappe nicht geöffnet wird, können Sie Excel genauso gut herunterfahren. Diese Reihe von Schritten funktioniert nicht.)

  5. Drücken Sie Alt + F11, um den VBA-Editor anzuzeigen.

  6. Suchen Sie im Projektexplorer das Modul, das Sie speichern möchten.

  7. Klicken Sie mit der rechten Maustaste auf den Modulnamen und wählen Sie Datei exportieren.

  8. Geben Sie einen Namen und einen Speicherort für das Modul an.

  9. Schließen Sie den VBA-Editor und verlassen Sie Excel.

  10. Wenn das Modul in einer eigenen Datei gespeichert ist, können Sie es jetzt nach Bedarf in eine andere Arbeitsmappe importieren.

Eine andere Möglichkeit, eine Wiederherstellung zu versuchen, ist die Verwendung von OpenOffice, einer kostenlosen Alternative zu Microsoft Office. Das Tabellenkalkulationsprogramm in OpenOffice öffnet Excel-Dateien und reagiert nicht so empfindlich auf einige Korruptionsprobleme.

Wenn dies immer noch nicht funktioniert, versuchen Sie es mit einem einfachen Dateimanipulationstool, mit dem Sie Dateien Sektor für Sektor von einer Festplatte lesen und dann die Informationen in jedem Sektor anzeigen können. Bei den meisten Dateitypen ist dies nicht sehr hilfreich. Tatsächlich würde es Ihnen nicht helfen, Daten aus einer Excel-Arbeitsmappe wiederherzustellen. Das Wiederherstellen von Makros ist jedoch eine andere Geschichte. Sie werden in der Arbeitsmappe in einfachem ASCII-Text gespeichert, sodass Sie den Makrocode erkennen und dann vom Festplatten-Tool kopieren können sollten.

_Hinweis: _

Wenn Sie wissen möchten, wie die auf dieser Seite (oder auf einer anderen Seite der ExcelTips-Websites) beschriebenen Makros verwendet werden, habe ich eine spezielle Seite vorbereitet, die hilfreiche Informationen enthält.

ExcelTips ist Ihre Quelle für kostengünstige Microsoft Excel-Schulungen.

Dieser Tipp (2399) gilt für Microsoft Excel 97, 2000, 2002 und 2003. Eine Version dieses Tipps für die Multifunktionsleistenschnittstelle von Excel (Excel 2007 und höher) finden Sie hier: