在访问表单中筛选 VBA

Filtering VBA in Access Form

我有一个名为 Review List 的表单,其中显示了所有请求,但我只想显示某些需要审核的记录。我希望在加载表单时,只有那些 [RequestStatus] 为 "Submitted" 或 "Re-Submitted" 的记录才会显示在列表中。我可以获得 VBA 代码以根据其中一个值进行过滤,但我不知道如何让它过滤两个值。

我知道这可能很简单,但我找不到答案,我很困惑。

不确定 VBA 是否需要代码。您可以使用查询作为表单的记录源,并根据您的条件包含 WHERE 子句来限制显示的行:

WHERE [RequestStatus] IN ('Submitted', 'Re-Submitted')

但是如果您想使用 VBA 来应用过滤器...

Dim strFilter As String
strFilter = "[RequestStatus] IN ('Submitted', 'Re-Submitted')"
Debug.Print strFilter '<- examine this in Immediate window; Ctrl+g will take you there
Me.Filter = strFilter
Me.FilterOn = True

还有另一种方法(也许更简单)。您不需要任何 vba,甚至不需要修改您的记录源。只需确保在表单的记录源中包含 [RequestStatus] 字段,然后在表单过滤器中添加以下内容

状态= 'Submitted' 或状态='Re-Submitted'

snapshot