VBA将文件夹中的csv文件转换为xlsx文件

我有这个代码。

此代码转换为xlsm文件。

我想转换成xlsx文件。

怎么样?

我通过改变尝试

wBook.SaveAs XlsFolder & Replace(fname, ".csv", ""), ThisWorkbook.FileFormatTO wBook.SaveAs XlsFolder & Replace(fname, ".csv", ".xlsx") 

它没有奏效。

 Private Sub CommandButton2_Click() Dim CSVfolder As String Dim XlsFolder As String Dim fname As String Dim wBook As Workbook CSVfolder = "C:\csv\" XlsFolder = "C:\Charts\" fname = Dir(CSVfolder & "*.csv") Do While fname <> "" Set wBook = Workbooks.Open(CSVfolder & fname, Format:=6, Delimiter:=",") wBook.SaveAs XlsFolder & Replace(fname, ".csv", ""), ThisWorkbook.FileFormat wBook.Close False fname = Dir Loop End Sub 

使用macrosFileFormat:=xlOpenXMLWorkbook ,一个xlsx工作簿的文件格式是FileFormat:=xlOpenXMLWorkbook

所以这里是你的代码:

 Private Sub CommandButton2_Click() Dim CSVfolder As String, _ XlsFolder As String, _ fname As String, _ wBook As Workbook CSVfolder = "C:\csv\" XlsFolder = "C:\Charts\" fname = Dir(CSVfolder & "*.csv") Do While fname <> "" Set wBook = Workbooks.Open(CSVfolder & fname, Format:=6, Delimiter:=",") wBook.SaveAs XlsFolder & Replace(fname, ".csv", ""), xlOpenXMLWorkbook wBook.Close False fname = Dir Loop End Sub