試試這個
Dim objExcel, objWorkbook
Set objExcel = CreateObject("Excel.Application")
Set objWorkbook = objExcel.Workbooks.Open("C:\Folder\Test_PO.xls")
objExcel.Visible = True
objExcel.Run "Data_Analysis"
objWorkbook.Close
objExcel.Quit
Set objWorkbook = Nothing
Set objExcel = Nothing
WScript.Echo "Finished."
WScript.Quit
編輯
如果宏是一個模塊,然後上面會幫助中如果宏爲片狀說,工作表Sheet然後更換線
objExcel.Run "Data_Analysis"
與
objExcel.Run "sheet1.Data_Analysis"
隨訪
嘗試此代碼。
Dim objExcel, objWorkbook, ad, FilePath
Set objExcel = CreateObject("Excel.Application")
objExcel.Visible = True
For Each ad In objExcel.AddIns
If ad.Name = "Converteam.xla" Then
FilePath = ad.Path & "\Converteam.xla"
Exit For
End If
Next
objExcel.Workbooks.Open (FilePath)
Set objWorkbook = objExcel.Workbooks.Open("C:\Folder\Test_PO.xls")
objExcel.Run "Data_Analysis_Converteam"
objWorkbook.Close
objExcel.Quit
Set objWorkbook = Nothing
Set objExcel = Nothing
WScript.Echo "Finished."
WScript.Quit
說明:
當您使用CreateObject
,加載項是不是默認安裝的。請看這個鏈接。
主題:http://support.microsoft.com/kb/213489/
您必須加載外接,然後調用相關的宏:加載項在Excel
鏈接使用CreateObject命令時不會加載。此外,您的宏的名稱不Data_Analysis
但Data_Analysis_Converteam
HTH
如果宏是在一個插件,你需要加載插件。 – assylias