當我的方法/子程序執行後發生事件時,如何將變量傳遞給VBA中的事件?執行後將變量傳遞給VBA事件處理程序
詳情:
'My Sub''''''''''''''''''''''''''
Private Sub mySub()
structCalculateDateValues 'calculates a number of dates that I want to be unlocked on my form
fnCreateTable 'create a table will all dates form my database
End Sub
'Event handler for continous form'''''''''''''''
Private Sub Form_Current()
'Some code to get the value of my Struct - structCalculateDateValues
'Lock records that do not fall within of the date parameters of the values in structCalculateDateValues
End Sub
這裏的概念是我想一個形式展現在一個臨時表中的所有日期的記錄,但只允許其中的一些記錄可編輯。這發生在MS Access 2013年我有它設置的方法是:
- 創建一個結構包含所有日期計算基於這些計算
- 連續的形式,是
- 負載值到臨時表綁定到該表已存在
- 執行通常會在這裏結束
- 作爲形式打開它觸發Form_Current事件處理程序
- 通行證結構值,該處理程序以某種方式??????
這是一個比其他任何事情都更有效率的問題,一個大問題就是如何觸發該事件。我也想避免一個答案,導致我寫我的結構成員值到數據庫(將是一個cop-out)。我認爲在VBA中必須有一種方法來暫停執行來檢測事件嗎?
感謝,
將它設置爲模塊變量,其中我的子項是私有的myStruct,因爲xyz然後分配和使用。使用structCalculateDateValues作爲函數返回你的結構也可能 –
如果我明白這一點,你建議我在事件處理程序中重新計算我的結構。這很容易做到,而且我的結構是按照您的建議設置的模塊。但是,如果可能的話,我想盡我所能保存處理器。基本上我會重複工作(如果我在這裏理解你)。 –
所以只是使用它,如果你有頂部的私人結構,那麼你可以在當前使用 –