Arbeitsblätter in jeweils einer eigenen Arbeitsmappe speichern

Mit diesem praxiserprobten Excel VBA Makro speichern Sie alle Arbeitsblätter einer Arbeitsmappe automatisch in jeweils eigene Arbeitsmappen. Das spart Zeit beim Verteilen, Archivieren und Versenden von Berichten. Die neuen Dateien werden im gleichen Verzeichnis abgelegt wie die Ausgangsdatei. Das Hauptthema lautet Arbeitsblätter in eigene Arbeitsmappen speichern, inklusive Funktionsweise, Anleitung und typischer Stolpersteine.

Was die Lösung leistet und wie sie funktioniert

Das Makro kopiert nacheinander jedes Arbeitsblatt der aktiven Arbeitsmappe in eine neue Arbeitsmappe, vergibt einen sprechenden Dateinamen aus Basisdatei und Blattname und speichert im Ordner der Quelldatei. Während des Vorgangs deaktiviert es Bildschirmaktualisierung und Ereignisse, was die Ausführung beschleunigt und unbeabsichtigte Nebenwirkungen vermeidet. So gelingt das Speichern von Arbeitsblättern in eigene Arbeitsmappen zuverlässig und wiederholbar.

Schritt-für-Schritt-Anleitung zur Nutzung

  1. Öffnen Sie die Excel Arbeitsmappe, deren Arbeitsblätter Sie in eigene Arbeitsmappen speichern möchten, und sichern Sie diese zunächst an einem gewünschten Speicherort.
  2. Öffnen Sie den VBA-Editor mit Alt F11 und fügen Sie über Einfügen, Modul ein neues Standardmodul hinzu.
  3. Kopieren Sie den unten stehenden VBA-Code vollständig in das Modul.
  4. Speichern Sie die Datei als makrofähige Arbeitsmappe, zum Beispiel mit der Endung xlsm, damit der VBA-Code dauerhaft verfügbar ist.
  5. Führen Sie das Makro aus, über Ansicht, Makros oder mit Alt F8, wählen Sie Arbeitsblaeter_speichern und bestätigen Sie mit Ausführen.

Praxisbeispiel für das Speichern in eigene Arbeitsmappen

Angenommen, Ihre Quelldatei heißt Bericht.xls und enthält die Blätter Übersicht, Region_Nord und Region_Sued. Das Makro legt im gleichen Ordner neue Dateien an, zum Beispiel Bericht_Uebersicht.xls, Bericht_Region_Nord.xls und Bericht_Region_Sued.xls. So lassen sich einzelne Teilberichte getrennt weitergeben und archivieren.

Typische Fehlerquellen und wie Sie diese vermeiden

  • Quelldatei ist noch nicht gespeichert: Ohne Speicherort kann kein Zielpfad ermittelt werden. Speichern Sie die Ausgangsdatei vor dem Start des Makros.
  • Fehlende Schreibrechte im Zielordner: Prüfen Sie Berechtigungen, insbesondere in Unternehmensumgebungen. Legen Sie den Bericht in einen Ordner mit Schreibrechten ab.
  • Lange oder problematische Namen: Blattnamen dürfen in Excel keine unzulässigen Zeichen enthalten, dennoch können sehr lange Pfade zu Fehlern führen. Halten Sie Datei- und Blattnamen prägnant.
  • Ausgeblendete oder sehr große Blätter: Auch ausgeblendete Arbeitsblätter werden verarbeitet. Bei sehr umfangreichen Dateien kann der Vorgang etwas dauern, die Deaktivierung der Bildschirmaktualisierung beschleunigt.
  • Unerwartete Dateiendungen: Das Makro speichert mit der Endung xls. Wenn Ihre Quelldatei xlsx oder xlsm heißt, erscheint die Quelldateiendung im Basisnamen, zum Beispiel Bericht.xlsx_Uebersicht.xls. Das Verhalten ist technisch korrekt, prüfen Sie später die gewünschte Konvention.

Hinweise zu Dateiformaten und Namensgebung

Die Prozedur speichert jede neue Arbeitsmappe als Excel 97 bis 2003 Arbeitsmappe mit der Endung xls. Das ermöglicht eine breite Kompatibilität, führt aber dazu, dass Formeln oder Features neuerer Formate gegebenenfalls abwärtskompatibel gespeichert werden. Der Dateiname setzt sich aus dem Namen der Ausgangsdatei ohne xls, einem Unterstrich und dem Blattnamen zusammen. Enthält die Ausgangsdatei die Endung xlsx oder xlsm, bleibt diese im Basisteil des Namens erhalten. Achten Sie auf eindeutige Blattnamen, damit keine Namenskollisionen mit bereits vorhandenen Dateien im Ordner entstehen.

Makro ausführen und Ergebnisse prüfen

Starten Sie das Makro Arbeitsblaeter_speichern und warten Sie, bis die Ausführung beendet ist. Prüfen Sie anschließend den Ordner der Ausgangsdatei. Dort finden Sie für jedes Arbeitsblatt eine eigene Arbeitsmappe. Öffnen Sie stichprobenartig einige Dateien, um Inhalt und Benennungen zu verifizieren.

VBA-Code zum Speichern von Arbeitsblättern in eigene Arbeitsmappen

Sub Arbeitsblaeter_speichern()
'** Aufrufen der Speicherprozuedur
Call SheetsSpeichern(ActiveWorkbook)
End Sub

Public Sub SheetsSpeichern(Wkb As Workbook)
'** Prozedur zum extrahieren und speichern der einzelnen Arbeitsblätter
Dim bScreenUpdating As Boolean
Dim bEnableEvents As Boolean
Dim tPath As String
Dim tFileName As String
Dim tSheetName As String
Dim oSheet As Object
With Application
bScreenUpdating = .ScreenUpdating
bEnableEvents = .EnableEvents
.ScreenUpdating = False
.EnableEvents = False
tPath = Wkb.Path & Application.PathSeparator
tFileName = WorksheetFunction.Substitute(Wkb.Name, ".xls", vbNullString)
For Each oSheet In Wkb.Sheets
oSheet.Copy
With ActiveWorkbook
   tSheetName = oSheet.Name
   .SaveAs tPath & tFileName & "_" & tSheetName & ".xls"
   .Close SaveChanges:=False
End With
Next oSheet
.ScreenUpdating = bScreenUpdating
.EnableEvents = bEnableEvents
End With
End Sub

Fazit

Mit diesem Excel VBA Ansatz speichern Sie Arbeitsblätter in eigene Arbeitsmappen schnell und strukturiert. Die automatische Benennung, die Verarbeitung aller Blätter und die Ausführung im Ordner der Ausgangsdatei sorgen für einen reibungslosen Ablauf. Befolgen Sie die Anleitung und prüfen Sie kurz die Ergebnisse, dann gewinnen Sie spürbar Zeit bei wiederkehrenden Aufgaben.

Relevante Artikel

Projekt-Anfrage

Excel automatisieren. Zeit sparen.
Fehler vermeiden.
Wir entwickeln Ihre individuelle
Excel- / VBA-Lösung.
Jetzt anfragen!

    Wir benutzen Cookies
    Ihre Zufriedenheit ist unser Ziel, deshalb verwenden wir Cookies. Mit diesen ermöglichen wir, dass unsere Webseite zuverlässig und sicher läuft, wir die Performance im Blick behalten und Sie besser ansprechen können. Cookies werden benötigt, damit technisch alles funktioniert und Sie auch externe Inhalte lesen können. Des Weiteren sammeln wir unter anderem Daten über aufgerufene Seiten, getätigte Käufe oder geklickte Buttons, um so unser Angebot an Sie zu Verbessern. Mehr über unsere verwendeten Dienste erfahren Sie unter „Weitere Informationen“. Mit Klick auf „Akzeptieren“ erklären Sie sich mit der Verwendung dieser Dienste einverstanden. Ihre Einwilligung können Sie jederzeit mit Wirkung auf die Zukunft widerrufen oder ändern.