Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

Datenblätter aus Excel in einzelne Daeien speichern





Frage

Hallo, ich habe eine Excel-Datei, in der mehrere hundert einzelne Datenblätter enthalten sind. Nun möchte ich automatisiert diese Datenblätter als jeweils einzelne XLS speichern wobei der Datenblattname der Dateiname sein soll. Hat das schon mal jemand automatisiert?? Dank und Gruß

Antwort 1 von coros

Hallo Balu660,

das kann man mit z.B. dem nachfolgenden Makro machen. Kopiere das Makro in ein StandardModul und starte es z.B. über eine Befehlsschaltfläche.

Option Explicit
Rem: In Variable "Pfad" den Pfad, in das die Blätter abgespeichert werden sollen, schreiben
Const Pfad = "C:\"
Sub Blätter_einzeln_speichern()
Dim i As Integer, Speichername As String
Application.ScreenUpdating = False
Rem: Schleife um jedes Tabellenblatt anzusprechen
Rem: Schleife läuft von hinten nach vorne
For i = Worksheets.Count To 2 Step -1
Rem: Blattname in Variable "Speichername" schreiben
Speichername = ThisWorkbook.Sheets(i).Name
Rem: Das durch die Schleife agesprochene Tabellenblatt in eine neue Datei verschieben
Sheets(i).Move
Rem: Datei mit dem verschobenen Tabellenblatt unter dem Namen, der in Variable "Speichername"
Rem: gespeichert wurde abspeichern
ActiveWorkbook.SaveAs Filename:=Pfad & Speichername & ".xls"
Rem: Abgespeicherte Datei schließen
ActiveWindow.Close
Next
End Sub


Mit dem Makro werden alle bis auf das erste Tabellenblatt in jeweils eine eigene neue Datei verschoben und abgespeichert. Du musst in dem Makro in der Zeile

Const Pfad = "C:\"

noch den Pfad anpassen. Aber nicht die Anführungszeichen ( "" ) löschen, der Pfad gehört dazwischen.

Ich hoffe, Du kommst klar. Bei Fragen melde Dich.

Solltest Du nicht wissen, wie Du den Code in Deine Datei bekommst, dann schau mal auf meiner HP in der Rubrik Anleitungen und dort dann in der Anleitungsnummer 3 nach. Dort stelle ich dazu eine bebilderte Anleitung zur Verfügung, die Dir sicherlich helfen wird.

MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein
Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.

Antwort 2 von Balu660

Hallo Oliver,

vielen Dank für die turboschnelle Antwort !! Ich werds gleich mal ausprobieren.

Dank und Gruß
Uli

Antwort 3 von Balu660

Hallo Oliver,

Klasse !!! Funktioniert super und hat mir einiges an Arbeit und Kopfschmerzen erspart.

Dank und Gruß
Uli

Antwort 4 von coros

Hallo Uli,

danke Dir für das Lob und die Rückmeldung. Sollten sich ein paar User mal eine Scheibe von abschneiden.

MfG,
Oliver
Jeder macht was er will, keiner macht was er soll, aber alle machen mit.