Arbeitsmappe erstellen und speichern in Excel VBA
Hier in diesem Tutorial zeige ich Euch wie Ihr ĂŒber Excel VBA neue Arbeitsmappen mit Workbooks.Add erstellen könnt und diese auch speichern könnt. Dabei wird auch berĂŒcksichtigt, dass wir eine Datei als xlsm Datei speichern, die Makros enthalten könnte. HierfĂŒr wird ĂŒbrigens das FileFormat benötigt.
Das Startvideo der VBA Tutorial Serie auf YouTube findet Ihr hier
Die Playlist meiner VBA Tutorial Serie auf YouTube findet Ihr hier
Achtung:
Benutzt zum Ăben eine separate Tabelle fĂŒr Testzwecke oder eine Kopie des Originals damit Euch keine Daten verloren gehen.
Video zu diesem Tutorial:
Beispielscript Arbeitsmappe erstellen und speichern in Excel VBA
Im nachfolgenden Script erstellen wir eine neue Arbeitsmappe mit Workbooks.Add und fĂŒgen weitere 2 TabellenblĂ€tter mit Worksheets.Add hinzu, sodass wir anschlieĂend 3 TabellenblĂ€tter haben.
Zuvor habe ich eine Objektvariable als Tabellenblatt mit Workbook deklariert. Um dann eine neue Arbeitsmappe zuzuweisen wird ganz am Anfang das Set benötigt.
Ăber ActiveWindow.Caption haben wir die Möglichkeit den Namen des Fensters zu Ă€ndern. Das hat aber keine Auswirkungen auf den Speicherprozess und gilt wirklich nur fĂŒr das Fenster selbst.
Beim Speichern der Excel Datei im xls Format sind normalerweise keine weiteren Parameter nötig. Wollt Ihr allerdings die Datei als xlsm (also fĂŒr Makros) speichern benötigt Ihr FileFormat oder eine entsprechende Konstante. Die möglichen Formate könnt Ihr hier finden: XLFileFormat
Unten habe ich beide Varianten zu stehen. Wenn Ihr möchtet könnt Ihr diese natĂŒrlich gerne austauschen.
Zum Schluss wird die Datei dann mit close geschlossen. Ăber das True wird die Arbeitsmappe bei einer vorherigen Ănderung des Inhalts nochmal ohne RĂŒckmeldung gespeichert.
Sub NeueArbeitsmappeTutorial() Dim MeineArbeitsmappe As Workbook Set MeineArbeitsmappe = Workbooks.Add MeineArbeitsmappe.Worksheets.Add MeineArbeitsmappe.Worksheets.Add ActiveWindow.Caption = "MeineArbeitsmappe" 'xlOpenXMLWorkbookMacroEnabled 'FileFormat:=52 MeineArbeitsmappe.SaveAs "E:\Testordner\MeineArbeitsmappe5.xlsm", xlOpenXMLWorkbookMacroEnabled MeineArbeitsmappe.Close True End Sub