Arbeitsblätter in jeweils einer eigenen Arbeitsmappe speichern

Die folgende Prozedur speichert alle Arbeitsblätter einer Mappe in jeweils extra Arbeitsmappen ab. Die neu erzeugten Arbeitsmappen werden im gleichen Verzeichnis abgelegt, in dem sich die Ausgangsdatei befindet.

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

Partnerlinks

Relevante Artikel

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.