這是一個非常長期的bug,它的存在了,因爲訪問97天, (大約4-5版本的訪問)。
這裏的解決方案是永遠不要使用表格預選賽中,只需將您的行動事件之後,你會好起來的
=PopUpProcess()
請注意,您必須先=它,和後綴必須有括號()
請記住,您實際上可以使用行爲來獲得優勢。運行的功能將來自當前焦點在屏幕上的窗體。這意味着您可以使用具有相同名稱的函數的不同形式,並且無論哪種形式具有焦點,具有該名稱的函數將從該表單代碼模塊運行。
更好的是,如果其中一種形式在表單代碼模塊中沒有該函數作爲public,那麼將使用標準代碼模塊中的函數。所以你可能有九種形式,都使用主標準代碼模塊中的標準函數。但是,第十種形式可能需要運行特殊代碼,因此只需將該代碼模塊中的該功能代碼作爲公共代碼運行,並且它將在標準代碼模塊中代替公共代碼運行。
此方法允許您構建適用於多種不同形式的單個自定義菜單欄,但那些許多表單將從該自定義菜單欄上運行不同的代碼。這也鼓勵你把菜單代碼放在它所屬的窗體中。
因此,要解決您的問題,只需不使用表單的限定符,並使用上述格式。
注意,您可以從這些功能也傳遞參數,例如
=PopUpProcess(‘hello’)
然後聲明函數爲:
Public Function PopUpProcess(strParm as string)
請記住,在功能和語法和所有的東西我上面陳述也適用於當您使用功能區中的訪問2007訪問行動。
是否還有一些其他功能的形式,也可能是調用該功能? 例如,如果你爲表單添加一個空函數(比如說「Public Function DoesNothing」)並且調用eval(「forms('MyForm')。DoesNothing」),你會得到一個消息框嗎? – anschauung 2009-07-08 02:35:05