在ms訪問中,我有一個表單,它也有一個子表單。我想以編程方式將主表單中的RecordsetType更改爲快照,當子表/子表單具有一對多關係中的關聯記錄時。我寫了一些vba代碼來做到這一點,但我遇到了一些非常奇怪的行爲。以編程方式更改以ms訪問的RecordsetType或更好的方法
然後我發現這是因爲當我改變RecordsetType時,表單刷新並導航回第一條記錄。這會導致On Current事件和相關代碼在子表單和主表單中兩次觸發。我正在考慮使用DoCmd.SearchForRecord導航回原始記錄,但很快就意識到它不起作用,因爲DoCmd.SearchForRecord中的WHERE條件在事件第二次觸發時被覆蓋。這一切似乎都很低效。
有沒有其他方法可以做我想做的事情?我真的不想將窗體中的控件設置爲「禁用」。
爲什麼你不希望設置窗體AllowEdits屬性?這很簡單。 – Fionnuala 2013-02-19 16:14:45
是的,這是一個非常簡單的解決方案。我一直在做三個星期的VBA編程。儘管記錄集類型和允許編輯屬性表中的相同選項卡上,我甚至沒有看到它在那裏。而令人尷尬的是,我花了很多時間試圖弄清楚如何使這個工作。謝謝! – jaromey 2013-02-19 16:39:08
這是一個真正的問題,試圖看到這些東西,有這麼多dratted屬性:) – Fionnuala 2013-02-19 16:40:37