2010-10-13 77 views
5

我可以將外部代碼鏈接到Word文檔嗎? 我有很多帶有宏的文檔(VBA代碼)。全部使用相同的代碼。我希望代碼能夠從外部源代碼運行,而不是從所有這些文件中運行。這樣,如果我必須更新代碼,我只有一個地方需要更新。在MS Word中運行外部VBA代碼

回答

2

將代碼移動到附加的模板,那麼宏在所有基於該模板的文檔中都可用。

+0

Thaks爲答案!這是做到這一點的唯一方法嗎?我們在一個平臺上,當我們使用其他平臺而不是normal.dot時,我們有時會遇到問題。 – Daniel 2010-10-13 14:10:31

+0

如果你想使用VBA代碼,就是這樣。您可以將代碼轉換爲Plug in(VB6或任何.net lang可以這樣做),但這可能超出您真正需要的。 – DarinH 2010-10-17 03:48:01

2

您可以創建一個模板並將其放入%APPDATA%\ Microsoft \ Word \ STARTUP文件夾中,這會使模板成爲一個插件並且STARTUP是一個值得信賴的位置,與使用模板中的宏相比,其他地點。

然後,任何文檔都可以使用Application.Run()在模板中調用函數。

例如

在模板中寫入以下內容:

Function templateHello() As String 
    templateHello = "hello from template!" 
End Function 

然後,任何Word文檔中,你可以這樣寫:

MsgBox Application.Run("templateHello") 

這將顯示一個消息框, 「你好,從模板!」