2009-11-23 65 views
0

我正在努力尋找使用VSTO和VB.net創建office插件的簡單指南。爲Office 2000/Office 2007構建Com插件

具體而言,我想知道如何能夠創建一個插件/ DLL部分,它們可以在形式從VBA引用: -

Addin.method(參數)或Addin.property = X

或者哪個會將自己的自定義工具欄/功能區界面安裝到Office的某個方面,例如Word。

我已經檢查了MSDN,並且在可讀性和可用性方面我迄今爲止繪製了一個空白。

我目前有一個要求,即爲Office 2000創建至少一個插件,以運行和操縱SQL,然後爲自定義的Office 2007(Word)設置創建一套插件。

回答

0

得到這個工作:-)

使用類libary項目和ComInterface/ClassInterface。

1

從VBA代碼向腳本引擎添加全局命名項需要腳本引擎通過IActiveScript :: AddNamedItem公開自己。我不認爲微軟會盡快做到這一點,因爲這可能會破壞現有的VBA代碼。

+0

Perhpas我在我的問題上有點渾濁。 我在VBA中使用了許多對第三方dll的引用;通過我們的CRM系統我可以通過VBA創建和操作CRM聯繫人對象。 例如: Activebookmark.range.text = oContact.Addresses(1).FormattedAddress 隨着oContact是所述CRM系統內的接觸的一個實例(雖然我已經轉述一點)。 我的問題是我如何在'家庭'的com插件中實現相同的功能? 例如: strResult = oSQLQuery.RunQuery(strQuery,strField) SQL代碼被封裝在com插件中? – Stuart 2009-11-25 15:02:47

+0

如果您可以控制VBA代碼,則可以聲明全局變量以存儲對插件的引用。您可能需要重新考慮您的設計,因爲全局變量通常被認爲是不好的做法,正是因爲它們的非局部性:全局變量可能會在沒有通知的情況下進行修改,併產生相互依賴性和複雜性 – 2009-11-25 18:21:10