我想使用mac上的VBA将一个excel工作簿拆分为每个工作表的一个文件。我尝试了许多不同的makro代码,我发现在不同的论坛,但我从来没有得到他们的工作。有没有人有适合他的代码?到目前为止,我找到的最好的代码如下:
Sub ExportSheetsToCSV()
Dim xWs As Worksheet
Dim xcsvFile As String
For Each xWs In Application.ActiveWorkbook.Worksheets
xWs.Copy
xcsvFile = CurDir & "/" & xWs.Name & ".csv"
Application.ActiveWorkbook.SaveAs Filename: = xcsvFile, _
FileFormat: = xlCSV, CreateBackup: = False
Application.ActiveWorkbook.Saved = True
Application.ActiveWorkbook.Close
Next
End Sub我在这里找到了这段代码:https://github.com/hami-gitgud/Excel_split_to_csv/blob/master/VBA%20Code
我将黑斜杠替换为"/“,以便根据mac进行调整。然而,它仍然不是完美的,因为我想保存.xlsx到桌面。有人知道该怎么做吗?
附注:curDir在mac上不能正常工作。https://docs.microsoft.com/en-us/office/vba/language/reference/user-interface-help/curdir-function
发布于 2021-09-06 10:17:30
用FileFormat: = xlOpenXMLWorkbook替换FileFormat: = xlCSV,并给它适当的扩展名。
https://stackoverflow.com/questions/69072560
复制相似问题