用于过滤子表单数据表的未绑定文本框

Posted

技术标签:

【中文标题】用于过滤子表单数据表的未绑定文本框【英文标题】:Unbound text box to filter sub form datasheet 【发布时间】:2012-10-26 20:55:34 【问题描述】:

我有一个嵌入了子表单数据表的 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

结束子

【问题讨论】:

【参考方案1】:

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

【讨论】:

以上是关于用于过滤子表单数据表的未绑定文本框的主要内容,如果未能解决你的问题,请参考以下文章

使用两个未绑定的文本框按日期范围过滤表单记录

在子报表的子窗体中引用未绑定的文本框

如何通过文本框过滤数据表视图中的子表单? #likeoperator #where 子句

如何使用 Access VBA 将具有默认值的未绑定文本框的值设置为空字符串

VBA:如何验证子表单中的绑定文本框

访问表单的文本框未显示值