2012-10-03 115 views
0

在Excel中啓動vba編輯器在Vsto-excel項目中,我在特定模塊中有。 通過代碼在C#中,我想啓動VBA編輯器顯示給定的。 我知道interop概念,但我堅持發射vba編輯器並顯示特定的宏。通過代碼

回答

1

您可以使用Application.Goto "MarcoName"這將打開您指定的子/宏的VBE。

+0

是的,工作得很好,....但如果我有2個工作簿打開,並且都具有相同名稱的宏...那麼活動workBook的宏被稱爲? – KhannaB7

0

默認情況下,打開的Excel表格上的鍵盤快捷鍵ALT + F11打開VBA編輯器。 使用excel interop打開excel並使excel窗口可見。然後您可以將鍵盤快捷方式從應用程序傳遞到excel窗口。

如果您正在使用這個在WinForm應用程序,你可以使用的SendKeys方法鍵盤快捷方式傳遞到Excel窗口。 http://msdn.microsoft.com/en-us/library/system.windows.forms.sendkeys.send.aspx

否則使用SendMessage函數方法通過鍵盤快捷鍵across.Here是如此張貼在SendMessage使用,c# Sending keyboard commands to another window/process

+0

謝謝..會試試看。 – KhannaB7