我有一个将xlsx文件转换为csv格式的代码,它可以很好地工作但是在转换文件之后会打开所有csv文件,因为我有大约1000个时间来关闭所有文件
Sub XlsxToCsv()
Dim MyFileName As String, MyPath As String
Application.ScreenUpdating = False
Application.DisplayAlerts = False
MyPath = "C:\xlsFolder\"
MyFileName = Dir(MyPath & "*.xlsx")
ChDir "C:\csvfolder\"
Do Until MyFileName = ""
Workbooks.Open Filename:=MyPath & MyFileName
ActiveWorkbook.SaveAs Filename:=Left(MyFileName, InStr(1, MyFileName, ".xlsx") - 1), FileFormat:=xlCSV, CreateBackup:=False
MyFileName = Dir
Loop
End Sub
我应该做出哪些更改,以便不打开这些csv文件
答案 0 :(得分:0)
保存后,只需关闭工作簿即可。
Do Until MyFileName = ""
Workbooks.Open Filename:=MyPath & MyFileName
ActiveWorkbook.SaveAs Filename:=Left(MyFileName, InStr(1, MyFileName, ".xlsx") - 1), FileFormat:=xlCSV, CreateBackup:=False
MyFileName = Dir
activeworkbook.close true
Loop
把它放在而不是你的。因此它将打开它,将其保存为CSV然后关闭它。