2015-08-14 65 views
0

我正在爲使用MS Access的數據中心開發錯誤日誌記錄應用程序。在測試環境中有+ - 200個MS Access MDB。我在我的應用程序將運行在一個MDB上的點完美無缺。通過將代碼插入到每個On_Error函數中,並通過在這樣的On_Error catch語句中包裝任何函數,我已經實現了MDB特定的功能。 我的問題是,要改變每個數據庫,每個數據庫中的每個功能都是多餘的。 有沒有辦法在一個地方添加一些代碼/模塊到每個MDB上,而這個地方會在任何錯誤上運行? (或者,有一種方法可以編程的方式打開和修改表單後面的VBA,即使它涉及荒謬的字符串操作。)任何VBA(MS Access)錯誤後運行代碼

+0

此答案可能有助於戴爾。 http://stackoverflow.com/questions/4168674/using-a-centralized-vba-module-in-multiple-access-databases – DaveMac

回答

0

根據DaveMac的鏈接,您可以鏈接集中的庫mdb/mde,但錯誤處理(「在錯誤...「)在每個功能中需要爲本地。這就是它在VBA中的樣子。

使用VBIDE對象庫,您可以訪問和修改其他數據庫中的VBA代碼。見

Import lines of code

https://christopherjmcclellan.wordpress.com/2014/11/06/meta-programming-in-vba-the-vbide-and-why-documentation-is-important/

這將是相當多的工作。雖然,我想。我只用它來將模塊從一個(Word)文件複製到其他幾個文件,並且花了一些時間才弄清楚。

請注意,使用http://www.mztools.com/v3/mztools3.aspx,只需單擊一下(或快捷方式),即可將可自定義的錯誤處理程序添加到函數中。 用VBIDE做它可能不是最快的方式,但肯定更有趣。 :)