0
我在Outlook中有一個宏,我打開一個保存在桌面上的Excel文件。一旦文件打開,我想運行一個我用excel編寫的宏,但是我的excel宏都不可用。無論何時我以其他方式打開excel,宏都可用,並且在通過outlook vba打開excel時啓用宏。我的問題是,當我通過Outlook宏打開Excel時,如何使這些宏可用?請參考下面的代碼。當從Outlook宏打開Excel時,不存在現有的宏
'Pre:None
'Post:Excel will have been opened, and the macro "CreatePowerPoint()"
' will have been run on the excel document
Sub Gimba()
Dim xlApp As Object, xlWkb As Object
'open excel
Set xlApp = CreateObject("Excel.Application")
xlApp.Visible = True ' can be False if you do not wont see reaction,
' byt make sure is not fail
'Do not show any alerts
xlApp.DisplayAlerts = False
'open excel document
Set xlWkb = xlApp.Workbooks.Open(file path goes here)
'call macro on excel document
Call xlApp.Run("CreatePowerPoint")
End Sub
'CreateObject'與綁定無關。他將不得不引用對象庫,然後聲明xlApp對象'As Excel.Application'。他仍然可以使用'CreateObject'。 – JimmyPena 2013-05-20 20:47:08
但是,如果您使用CreateObject,則在使用New語句時不會獲得智能感知幫助,這是評論的要點 – steveo40 2013-05-21 10:16:03
您需要從實例化中分離綁定。當您在聲明對象時使用'New'關鍵字時,無論您如何實例化對象,您都會在該行和後續行上獲得Intellisense。試試看看。 – JimmyPena 2013-05-22 20:10:41