我尝试了很多网站和组合,但我无法创建VBS脚本来打开我的CsV文件,然后将其另存为Xlsm文件。我确实让它重命名文件,但重命名的文件被认为已损坏,无法打开。 在Excel中,您可以打开CSV并执行保存为Xlsm并且它可以正常工作。我想用下面的脚本自动化这个过程。这是Excel 2013。 选项明确
Dim xlApp, xlBook
Set xlApp = CreateObject("Excel.Application")
xlApp.DisplayAlerts = False
Set xlBook = xlApp.Workbooks.Open("c:\1Datadump\datadump.csv")
xlApp.Application.Visible = True
ActiveWorkbook.SaveAs Filename:="C:\1Datadump\datadump.xlsm"
xlApp.Workbooks.close
xlApp.Application.Quit
感谢您提出任何建议。
答案 0 :(得分:1)
答案 1 :(得分:0)
您需要指定FileFormat
。您还需要确定工作簿参考资格:
如果您要保存ActiveWorkbook
,请使用Application.ActiveWorkbook
:
Const xlOpenXMLWorkbookMacroEnabled = 52
xlApp.ActiveWorkbook.SaveAs "C:\1Datadump\datadump.xlsm", xlOpenXMLWorkbookMacroEnabled
但是因为你已经引用了工作簿;我会用:
Const xlOpenXMLWorkbookMacroEnabled = 52
xlBook.SaveAs "C:\1Datadump\datadump.xlsm", xlOpenXMLWorkbookMacroEnabled