我对VB编程非常陌生,我正在尝试将多个Excel文件工作表保存为csv格式,但我不知道如何处理多个工作表,不过我找到了一种单个文件处理的方法。我在这个网站上找到了很有用的代码,唯一的问题是文件以工作表名称保存,但我想要它们以原始文件和工作表名称保存,例如文件名_工作表名称
,我尝试自己实现但总是出错,请问我做错了什么?
我正在使用的代码如下:
Public Sub SaveWorksheetsAsCsv()
Dim WS As Excel.Worksheet
Dim SaveToDirectory As String
Dim CurrentWorkbook As String
Dim CurrentFormat As Long
CurrentWorkbook = ThisWorkbook.FullName
CurrentFormat = ThisWorkbook.FileFormat
' Store current details for the workbook
SaveToDirectory = "H:\test\"
For Each WS In ThisWorkbook.Worksheets
WS.SaveAs SaveToDirectory & WS.Name, xlCSV
Next
Application.DisplayAlerts = False
ThisWorkbook.SaveAs Filename:=CurrentWorkbook, FileFormat:=CurrentFormat
Application.DisplayAlerts = True
' Temporarily turn alerts off to prevent the user being prompted
' about overwriting the original file.
End Sub