, die in
set xlapp = CreateObject("Excel.Application")
set fso = CreateObject("scripting.filesystemobject")
set myfolder = fso.GetFolder("YOURFOLDERPATHHERE")
set myfiles = myfolder.Files
for each f in myfiles
set mybook = xlapp.Workbooks.Open(f.Path)
mybook.SaveAs f.Name & ".xml", 47
mybook.Close
next
ich dies nicht getestet, aber es sollte alle Dateien konvertieren:
Setzen Sie diese in einer Textdatei und die Endung „.vbs“ machen ein einzelnes Verzeichnis mit der Erweiterung .xls.
Es erfordert einen direkten Ansatz. Jeder VBA-Code in einer Arbeitsmappe wird entfernt, die Arbeitsmappe wird nicht mit der Erweiterung .xlsm gespeichert. Alle Inkompatibilitätswarnungen werden nicht angezeigt, stattdessen werden die Änderungen automatisch akzeptiert.
Sub Convert_xls_Files()
Dim strFile As String
Dim strPath As String
With Application
.EnableEvents = False
.DisplayAlerts = False
.ScreenUpdating = False
End With
'Turn off events, alerts & screen updating
strPath = "C:\temp\excel\"
strFile = Dir(strPath & "*.xls")
'Change the path as required
Do While strFile <> ""
Workbooks.Open (strPath & strFile)
strFile = Mid(strFile, 1, Len(strFile) - 4) & ".xlsx"
ActiveWorkbook.SaveAs Filename:=strPath & strFile, FileFormat:=xlOpenXMLWorkbook
ActiveWorkbook.Close True
strFile = Dir
Loop
'Opens the Workbook, set the file name, save in new format and close workbook
With Application
.EnableEvents = True
.DisplayAlerts = True
.ScreenUpdating = True
End With
'Turn on events, alerts & screen updating
End Sub
Dank Robert, es hat sehr gut funktioniert. Das einzige, was ich geändert habe, war FileFormat: = XlFileFormat.xlXMLSpreadsheet (Ich benutze Excel 2003) – kristof
Kann der obige Code in PHP geschrieben werden? – chupinette