过滤器,当您键入组合框me.recordsource

问题描述 投票:0回答:1

[如果有人告诉我可以上传文件。

当您在记录级别使用的组合框中键入内容时,需要帮助复制过滤器。示例:我使用的是从参考表中查找的组合框,而不是使用前缀作为打开文本框(例如Mr. Mrs. Ms. Dr.)。我希望能够在组合框中键入字母“ r”,并使其过滤出女士并显示剩余值。选择后,将所选值存储在“名称”表中。

问题:当我在Combo4中添加新值时,上面的其他行会清除,如果它们与我刚刚在单元格中键入的值不匹配。以下公式中的RowSource可能会出现一些情况。我有什么乱序或公式错误吗?

我认为我想做的事情:1)如果使用t_Name中的值填充前缀值,则在t_ref_Prefix中显示匹配的值2)如果Combo4为空白/空则则打开Combo4并在t_ref_Prefix中显示所有值,以便可以选择一个值。3)如果用户在键入的值的两侧使用*进行更改,则在Combo4 THEN过滤器中键入文本。

Option Compare Database
Option Explicit

Private Sub Combo4_Change()
'https://stackoverflow.com/questions/48133260/display-records-in-access-db-combobox-on-any-text-typed-by-user
'test number of characters entered - if greater then 0 then assign rowsource
    
If Len(Me.Combo4.Text) > 0 Then
    'set the rowsource to match user search criteria
     Me.Combo4.RowSource = "SELECT * FROM t_ref_Prefix WHERE Prefix LIKE '*" & Me.Combo4.Text & "*'"
    'show the search in real-time
     Me.Combo4.Dropdown
Else
    'set to no
     Me.Combo4.RowSource = "SELECT t_ref_Prefix.auto, t_ref_Prefix.prefix, t_ref_Prefix.sort FROM _    
       t_ref_Prefix ORDER BY t_ref_Prefix.sort, t_ref_Prefix.prefix"
End If
End Sub
combobox access-vba
1个回答
© www.soinside.com 2019 - 2024. All rights reserved.