2012-11-15 88 views
0

假設我有一個包含一些通用VBA模塊的Excel工作簿作爲資源的C#項目。將VBA代碼注入到Excel資源文件中

我需要在注入特定於客戶端的某些VBA代碼後提供該文件。你會推薦什麼樣的圖書館來做到這一點,並且你有這些經驗來達到這個目的嗎?

而作爲一個額外的問題,是否有任何C#工具允許在工作簿在內存中運行宏?

非常感謝提前!

+0

寫的資源到磁盤,通過Excel Interop加載它,然後你可以通過VBProject.VBComponents操作宏http://support.microsoft.com/kb/303872 –

回答

1

您可以通過Excel InteropVBE Interop

我在VBA組件添加如下做到這一切:

 ExcelApp.VBE.ActiveVBProject.VBComponents.Add(Microsoft.Vbe.Interop.vbext_ComponentType.vbext_ct_StdModule).CodeModule.AddFromFile(...) 

然後我運行它,如下所示:

 ExcelApp.Run(YOUR MACRO NAME)