有一种方法可以将VBA代码转换为脚本,因此可以在不从EXCEL宏运行它的情况下执行它吗?
例如下面这段代码,我想运行它而不需要用包含它的宏打开Excel文件:
Sub XML_FILE()
Dim filename
MsgBox "Open File"
filename = Application.GetOpenFilename
If filename <> False Then
Workbooks.Open (filename)
MsgBox "Save File"
ActiveWorkbook.SaveAs filename:=filename, FileFormat:=xlOpenXMLWorkbook
End If
End Sub
使这个和其他宏作为脚本运行的步骤是什么?
答案 0 :(得分:3)
试试这个1.打开记事本文件并粘贴到代码下面:
Dim objExcel, objWorkbook
Set objExcel = CreateObject("Excel.Application")
Set objWorkbook = objExcel.Workbooks.Open("C:\Folder\example.xlsm")
objExcel.Visible = False
objExcel.Run "XML_FILE"
objWorkbook.Close
objExcel.Quit
Set objWorkbook = Nothing
Set objExcel = Nothing
WScript.Echo "Finished."
WScript.Quit
说明
1.使用您的宏函数名称更改objExcel.Run "Report"
。
然后将文件保存为test.vbs,然后运行它将运行的文件而不打开excel文件。