*.XLS Dateien als *.XLSX speichern
Ausgangslage - Was tut dieser Code-Schnipsel?
Dieses kleine Makro öffnet alle *.XLS Dateien in einem Verzeichnis und speichert diese im neuen Dateiformat als *.XLSX (OpenXMLFormat) im selben Verzeichnis.
Ergebnisse statt Aufwand & Arbeit?
Wir liefern Ergebnisse - Schicken Sie uns kurz Ihre Datei und Ihre Wünsche; wir integrieren den notwendigen Code professionell, beheben ggf. vorhandene Fehler, machen optional ein Code-Review, liefern bei Bedarf Performance-Optimierungen & setzen gewünschte Erweiterungen effizient für Sie um (und das zum Festpreis nach kurzer Sichtung).
Express-Service beauftragen
Der Quelltext
Option Explicit
Option Compare Text
' Original-Quelltext unter: https://www.online-vba.de/xls-dateien-als-xlsx-speichern
' Express-Hilfe für VBA unter https://www.online-vba.de/vba-expresshilfe
' Es gelten die Nutzungsbedingungen von Online-VBA.de
'Wichtiger Hinweis: Die XLS Dateien, die umgewandelt werden, dürfen keine Makros enthalten!
'Grund: Das XLSX Format beinhaltet keine Makros!!!
Public Sub OVBAde_MultiDateiFormatUpdate()
Dim oSourceBook As Object
Dim sPfad As String
Dim sDatei As String
Application.ScreenUpdating = False 'Das "Flackern" ausstellen
'Schritt 1: Schleife über alle Excel Dateien in einem Verzeichnis
sPfad = "C:\TEST\XLS2XLSX\"
sDatei = Dir(CStr(sPfad & "*.xls")) 'Alle *.xls Dateien
Do While sDatei <> ""
'Schritt 2: Öffnen der Datei und Datenübertragung
Set oSourceBook = Workbooks.Open(sPfad & sDatei, False, True) 'nur lesend öffnen
'Schritt 3: Datei speichern und wieder zu machen und nächste Schleifenrunde
Application.DisplayAlerts = False
'Speichern im XLSX Format
oSourceBook.SaveAs Filename:=CStr(sPfad & sDatei & "x"), FileFormat:=xlOpenXMLWorkbook
oSourceBook.Close False
Application.DisplayAlerts = True
'Nächste Datei
sDatei = Dir()
Loop
Application.ScreenUpdating = True 'Das Bildschirm-Aktualisieren wieder einschalten
'Variablen aufräumen
Set oSourceBook = Nothing
End Sub
Anmerkungen und Hinweise
Wichtiger Hinweis: Die XLS Dateien, die umgewandelt werden, dürfen keine Makros enthalten!
Grund: Das XLSX Format beinhaltet keine Makros!!!
Dieser Codeschnipsel wurde geschrieben von Marc Wershoven im Jahr 2013.
Die Nutzung erfolgt auf eigene Gefahr.
Bitte denken Sie immer zuerst an eine ausreichende Datensicherung.
Wir können keinen kostenlosen Support anbieten.
Es gelten unsere Nutzungsbedingungen.
