簡體   English   中英

使用VBA篩選MS Access子表單

[英]Filtering MS Access subform with vba

我有一個快速的問題。 我已經開發了一個預訂系統,該系統具有一個子窗體,該子窗體包含在顯示日期(主窗體)上所有已預訂的房間。 我添加了一個組合框,以允許用戶篩選房間以僅查看他們從組合框中選擇的房間(重新查詢子窗體,然后進行篩選)。

除了我的代碼有時在到達子末尾后,沒有明顯的原因有時會循環通過過濾子的情況之外,這種方法還不錯。 它可以正確顯示所有內容,所以我對此並不感到困擾(除非它與實際問題有關)。

但是,真正的問題是,當我選擇的房間沒有顯示日期的預訂時。 篩選器工作正常(空顯示),但是當我嘗試從組合框選擇另一個房間時,組合框更新后的重新查詢功能不起作用!

之前有沒有其他人經歷過?

工作流程:

組合框觸發“更新后”事件。 這將重新查詢子表單,在“當前”事件之后,將對子表單進行過濾。

當子表單為空時,我將無法再執行任何子表單重新查詢。

我做了類似的事情,對此很費勁,但是能夠通過我的combo_box_afterupdate事件中的以下代碼修復它。

Dim rs As Object
Me.Form.Filter = ""
Me.Form.Refresh
Set rs = Me.Recordset.Clone
rs.FindFirst "[ValueToFind] = '" & Me![MyComboBoxValue] & "'"
If Not rs.EOF Then Me.Bookmark = rs.Bookmark

還要確保鏈接父母和孩子為最后提到的人。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM