【问题标题】:Unbound text box to filter sub form datasheet用于过滤子表单数据表的未绑定文本框
【发布时间】:2026-02-06 23:15:02
【问题描述】:

我有一个嵌入了子表单数据表的 Microsoft Access (2010) 表单。 我的目标是在每个数据表列上方有一个未绑定的文本框,允许用户键入文本来过滤该列。

其中一个数据表列 VENDOR 显示基于 tblVendor 表的供应商名称列表。它通过对用户不可见的 VendorID 列绑定到数据表。

我使用以下代码,但它似乎只查询 VendorID 列上的数据表。我想查询文本。例如,我希望用户输入“Microsoft”,而不是“21”(Microsoft 的 VendorID)。

Private Sub TxtVendorSearch_Change()

Dim str1 As String

str1 = "[VendorID] LIKE '*" & Me.TxtVendorSearch & "*'"


Me!subOrderDS1.Form.Filter = str1
Me!subOrderDS1.Form.FilterOn = True

结束子

【问题讨论】:

    标签: ms-access


    【解决方案1】:

    如果还没有这样做,只需在子表单的查询中包含(必要时通过加入)[供应商]-名称。然后您可以只查询[Vendor] LIKE ... 而不是[VendorID]
    要使其实时,您还必须使用Me.TxtVendorSearch.Text,因为文本框的值不会立即与可见文本同步。

    【讨论】: