访问表单过滤器,在字段中包含多个项目

时间:2016-05-06 16:10:26

标签: access-vba ms-access-2010 access

在我的查询中,我有一个包含多个名称的字段。有些是经理,有些是审计师。

  1. 在我的表单上,我添加了一个包含两个项目,经理和审核员的字段。因此,当我选择Managers时,我想过滤我的子表单并在我的记录中查询5个名字,如果我选择Managers,我希望能够在我的记录中过滤我的表单/查询中的3个名字。
  2. 下面的

    是我的vba代码,但它不起作用,

    Private Sub cboAuditor_AfterUpdate()
    
        strManagers = "<>'Steven' And <>'Lisa' And <>'Christopher' And <>'Ronda' "
        strAuditors = "'Steven' Or 'Lisa' Or 'Christopher' Or 'Ronda' Or 'Amber'"
    
    
            If Me.cboAuditor = "Managers" Then
                strAnalystFilter = "[Created By] = '" & strManagers & "'"
    
            ElseIf Me.cboAuditor = "Auditors" Then            
               strAnalystFilter = "[Created By] = '" & strAuditors & "'"
    
            End If
    
        End Sub
    

1 个答案:

答案 0 :(得分:0)

您无法使用该语法 - 您希望包含与否的人不清楚。但尝试这个开始然后修改:

Private Sub cboAuditor_AfterUpdate()

    strManagers = "'Steven','Lisa','Christopher','Ronda'"
    strAuditors = "'Steven','Lisa','Christopher','Ronda','Amber')"

    If Me.cboAuditor = "Managers" Then
        strAnalystFilter = "[Created By] Not In (" & strManagers & ")"
    ElseIf Me.cboAuditor = "Auditors" Then            
        strAnalystFilter = "[Created By] In (" & strAuditors & ")"
    End If

End Sub