[英]MS ACCESS - How to filter a subform datasheet by a main form's textbox like a searchbox
[英]MS ACCESS - How to filter a splitform's datasheet by a multiple combobox values
我有一個帶有一些 txtboxes 和 1 combobox 的拆分表單。 combobox 與同一表單的查詢(qryPurchase)相關,它顯示了 3 列查詢字段:
ID_purchase, Purchase_Type, Date_Purchase
在查詢中還有其他字段,如Purchase_Item
、 Quantity
等,但只有 2 種 Purchase_Type 值,即賣和借。 不同的Purchase_Item
可以像發票一樣具有相同的ID_purchase
和Date_Purchase
。
combobox 列表示例:
ID_purchase, Purchase_Type, Date_Purchase
1, sell, 08/01/2020
1, sell, 09/01/2020
1, borrow, 09/01/2020
2, sell, 10/01/2020
2, borrow, 11/01/2020
當我從 combobox 的下拉菜單中選擇一行時,我希望它必須通過組合框的行值過濾下面的 splitform 的數據表,以便獲得與 ZA8284521647549D6ECBB00383A3C2 匹配的所有 ID_purchase 和 Purchase_Type 和 Date_Purchase 的數據表過濾列表價值觀。
就像上面的列表一樣,如果我選擇第一行,下面的數據表會顯示 2 條記錄。
我試圖實現這樣的目標:
Private Sub fltDocCombo_AfterUpdate()
Me.Form.Filter = "[ID_purchase] =" & Me.fltDocCombo.Column(0) _
& " AND [Purchase_Type] = " & "'" & Me.fltDocCombo.Column(1) & "'" _
& " AND [Date_Purchase] = " & "#" & Me.fltDocCombo.Column(2) & "#"
Me.Form.FilterOn = True
End Sub
Private Sub Form_Close()
Me.Form.Filter = ""
Me.Form.FilterOn = False
End Sub
Private Sub Form_Open(Cancel As Integer)
Me.Form.Filter = ""
Me.Form.FilterOn = False
End Sub
這有時有效,有時無效,似乎Me.Form.Filter
值被鎖定在列表的第一個 ID_purchase ..
就像上面的例子:
ID_purchase, Purchase_Type, Date_Purchase
1, sell, 08/01/2020
1, sell, 09/01/2020
1, borrow, 09/01/2020
2, sell, 10/01/2020
2, borrow, 11/01/2020
如果我嘗試選擇第二行,則應用的過濾器是第一行值..但不是每次..
有時似乎Date_Purchase
的過濾器沒有過濾任何內容..
我想像 ID_purchase 一樣依次應用過濾器,第二個是 Purchase_Type,最后一個是 Date,但是當它應用第二個過濾器時,它會取消第一個過濾器,依此類推。
在這種情況下,我不知道如何向現有過濾器添加另一個過濾器..
幫助..
解決了..
問題是Date_Purchase
日期格式..
為我的本地語言和日期格式 (dd/mm/yyyy) 安裝了 MS-ACCESS,但在 VBA 中,日期默認格式始終為 mm/dd/yyyy
所以我像這樣修改了Me.Form.Filter
值:
Me.Form.Filter = "[ID_turnin_temploan] =" & Me.fltDocCombo.Column(0) _
& " AND [Posizione] = " & "'" & Me.fltDocCombo.Column(1) & "'" _
& " AND [Data_turnin_temploan] = " & "#" & Format(Me.fltDocCombo.Column(2), "mm/dd/yyyy") & "#"
現在它可以工作了!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.