Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Alle Blätter einer Mappe einzeln speichern.

Alle Blätter einer Mappe einzeln speichern.
Andreas
Hallo Excelfreunde!
Habe in der Suche nur gefunden wie man einzelne Blätter einer Mappe speichern kann.
Ich möchte aber, wie im Betreff schon genannt, per Button alle Blätter einer Mappe in einen Unterordner ("einzeln") des Speicherordners der Ursprungsdatei speichern.
Der Name der neuen Dateien solle sich aus dem Namen des Blattes, einem Bindestrich und dem Namen der Datei (Mappe) zusammensetzen.
Als Beispiel: Dateiname="2011-06.xls", Blattname="FAKS", Dateiname der neuen Datei "FAKS-2011-06.xls".
Kann mir bitte jemand helfen.
Danke!
mfg, Andreas
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Alle Blätter einer Mappe einzeln speichern.
23.06.2011 15:29:54
marcl
Hallo Andreas,
vercuhe mal folgendes:
Sub kopieren()
Dim sh As Worksheet
For Each sh In Worksheets
sh.Activate
ActiveSheet.Copy
' Excel2007
ActiveWorkbook.SaveAs Filename:=ActiveSheet.Name & "-" & ThisWorkbook.Name, FileFormat:= _
xlExcel12
ActiveWorkbook.Close
Next sh
End Sub
Gruß
marcl
Anzeige
AW: Alle Blätter einer Mappe einzeln speichern.
23.06.2011 15:30:13
Armin
Hallo Anderas,
so:
Sub AllSheetSpeichern()
Dim WS As Worksheet
Dim Path As String
Dim Wb As String
Path = ActiveWorkbook.Path & "\einzeln\"
Wb = ActiveWorkbook.Name
For Each WS In ThisWorkbook.Worksheets
WS.Copy
ActiveWorkbook.SaveAs Filename:= _
Path & WS.Name & "-" & Wb & ".xls", _
FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
ActiveWorkbook.Close
Next
End Sub
Gruß Armin
Anzeige
Vielen Danke für die Hilfe! Klappt super!
23.06.2011 15:38:40
Andreas
Danke euch beiden!
mfg, Andreas
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Alle Blätter einer Mappe einzeln speichern


Schritt-für-Schritt-Anleitung

Um in Excel alle Blätter einer Arbeitsmappe einzeln zu speichern, kannst du den folgenden VBA-Code verwenden. Dieser Code speichert jedes Tabellenblatt als separate Datei in einem Unterordner namens "einzeln".

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.
  2. Wähle Einfügen > Modul, um ein neues Modul zu erstellen.
  3. Kopiere den folgenden Code in das Modul:
Sub AllSheetSpeichern()
    Dim WS As Worksheet
    Dim Path As String
    Dim Wb As String
    Path = ActiveWorkbook.Path & "\einzeln\"
    Wb = ActiveWorkbook.Name
    For Each WS In ThisWorkbook.Worksheets
        WS.Copy
        ActiveWorkbook.SaveAs Filename:= _
            Path & WS.Name & "-" & Wb & ".xls", _
            FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
            ReadOnlyRecommended:=False, CreateBackup:=False
        ActiveWorkbook.Close
    Next
End Sub
  1. Schließe den VBA-Editor.
  2. Führe den Code aus, indem du F5 drückst oder das Makro über Entwicklertools > Makros auswählst.

Dieser Code erstellt für jedes Tabellenblatt eine neue Datei mit dem Format Blattname-Dateiname.xls im Unterordner "einzeln".


Häufige Fehler und Lösungen

  • Fehler: Der Ordner "einzeln" existiert nicht.

    • Stelle sicher, dass der Ordner "einzeln" im gleichen Verzeichnis wie deine Excel-Datei existiert. Andernfalls musst du den Ordner manuell erstellen.
  • Fehler: Berechtigungsprobleme beim Speichern.

    • Überprüfe, ob du die nötigen Berechtigungen hast, um im jeweiligen Ordner zu speichern. Stelle sicher, dass der Ordner nicht schreibgeschützt ist.

Alternative Methoden

Wenn du keine VBA-Makros verwenden möchtest, kannst du die Blätter auch manuell speichern:

  1. Klicke mit der rechten Maustaste auf das Tabellenblatt, das du speichern möchtest.
  2. Wähle Verschieben oder Kopieren.
  3. Wähle Neue Arbeitsmappe und klicke auf OK.
  4. Speichere die neue Arbeitsmappe unter dem gewünschten Namen.

Diese Methode ist jedoch zeitaufwendiger, besonders wenn du viele Blätter hast. Für das einzelne Tabellenblatt speichern ist die VBA-Lösung deutlich effizienter.


Praktische Beispiele

Angenommen, du hast eine Excel-Datei mit den Blättern "Januar", "Februar" und "März". Nach der Ausführung des Makros werden die folgenden Dateien im Ordner "einzeln" erstellt:

  • Januar-MeineDatei.xls
  • Februar-MeineDatei.xls
  • März-MeineDatei.xls

So kannst du deine einzelnen Blätter aus Excel speichern und die Übersichtlichkeit deiner Arbeiten verbessern.


Tipps für Profis

  • Dateiformat anpassen: Du kannst das Dateiformat in der SaveAs-Methode ändern, um aktuelle Excel-Formate wie .xlsx zu verwenden.
  • Automatisierung: Du kannst den VBA-Code anpassen, um den Speichervorgang automatisch zu einem bestimmten Zeitpunkt auszuführen, z. B. beim Schließen der Arbeitsmappe.
  • Fehlerbehandlung: Füge Fehlerbehandlungsroutinen hinzu, um den Code robuster zu machen und mögliche Probleme während des Speichervorgangs automatisch zu lösen.

FAQ: Häufige Fragen

1. Wie speichere ich nur ein bestimmtes Tabellenblatt? Du kannst die WS.Copy-Zeile anpassen, um nur das gewünschte Blatt zu speichern, indem du den Namen des Blattes angibst.

2. Funktioniert dieser Code in Excel 365? Ja, der Code funktioniert in Excel 365 sowie in anderen neueren Versionen wie Excel 2016 oder Excel 2019.

3. Ist es möglich, die Dateien in einem anderen Format zu speichern? Ja, du kannst das FileFormat-Argument in der SaveAs-Methode ändern, um andere Formate wie .xlsx oder .csv zu verwenden.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige