如何通过一个excel marco 把 一个excel形式的数据文件转换成一个csv格式的文件?
发布网友
发布时间:2023-04-24 09:00
我来回答
共1个回答
热心网友
时间:2023-11-02 19:29
可以使用VBA增加macro实现该操作。
使用如下操作即可:
SaveAs Filename:=xxx.csv
步骤如下:
1、打开VBA编辑器(alt+F11)
2、增加模块
3、复制如下代码到编辑栏中
4、运行即可(F5)
可以采用如下代码批量处理:
Sub SaveCsv()
Dim myFile As String
Dim myDoc As String
Dim mySheet As Workbook
With Application.FileDialog(msoFileDialogFolderPicker)
.Show
.AllowMultiSelect = False
myFile = .SelectedItems(1)
End With
myDoc = Dir(myFile & "\" & "*.xlsx")
Do While Len(mySheet) <> 0
Set mySheet = Workbooks.Open(myFile & "\" & myDoc)
mySheet.SaveAs Filename:=myFile & "\csv" & Left(myDoc, Len(myDoc) - 4) & "csv", _
FileFormat:=xlCSV, CreateBackup:=False
mySheet.Save
mySheet.Saved = True
mySheet.Close
myDoc = Dir
Loop
End Sub