2016-11-17 50 views
0

我需要運行在Excel但是從VBS文件VBA宏。我打開Excel文件並編寫一些代碼值低於:打開Excel通過VBS和運行宏有

Set objExcel = CreateObject("Excel.Application") 
Set objWorkbook = objExcel.Workbooks.Open("C:\Users\user\Desktop\test1.xlsm") 
objExcel.Application.Visible = True 
objExcel.Cells(1,2).Value = "Test value" 
WScript.Quit 

我有這個文件2個簡單的宏:test1test2。我需要由VBS運行它們。

回答

0

我需要把somethink,如:

objExcel.Application.Run "test1" 

Set objWorkbook = objExcel.Workbooks.Open("C:\Users\user\Desktop\test1.xlsm") 

的我的代碼如下:

Set objExcel = CreateObject("Excel.Application") 
Set objWorkbook = objExcel.Workbooks.Open("C:\Users\user\Desktop\test1.xlsm") 
objExcel.Application.Visible = True 
objExcel.Application.Run "test1" 
objExcel.Application.Run "test2" 
0

若要從其他宏宏,你只需要這些行添加到您的代碼......只要你在個人表的代碼看起來應該像這樣保存你的宏...如果你已經在救他們另一個工作表,然後改變,它說你的工作表名稱personal.xlsb代碼的一部分...

Application.Run "PERSONAL.XLSB!test1" 
Application.Run "PERSONAL.XLSB!test2" 
+0

你有什麼關於蜂蜜酒[globalVariable1],[globalVariable2] ... ???? ]爲什麼你寫的Application.Run「PERSONAL.XLSB!測試1」兩次??? –

+0

我複製粘貼......並沒有意識到有關重複測試1 ... 我想,你不會需要這些,所以才擺脫他們。 –

+0

你的代碼片段是VBA。要運行從VBScript宏你需要自行使用隱式應用程序對象可用在VBA的應用對象的句柄('objExcel')。 –