Ms access VBA-多字段下拉框搜索查询

Ms access VBA-多字段下拉框搜索查询,ms-access,vba,Ms Access,Vba,我有一个下拉复选框,您可以在其中手动选择要查询的不同选项 我想做什么: 我想制作一个搜索查询表单,允许用户从下拉列表中选择多个信息。之后,我解析主表中的一个特定列以获取此信息 问题: 我有一个下拉多字段组合列表,允许用户选择多个选项进行搜索。图像应该更好地展示它: 我不知道如何使技术字段在我的SQL查询中工作 查询: Technology保存用户在表单中选择的字符串。也就是说,在上面提供的图像中,字符串将是“Console、PC、Web” 技术是一个包含所有选项的列表 Private Sub

我有一个下拉复选框,您可以在其中手动选择要查询的不同选项

我想做什么:

我想制作一个搜索查询表单,允许用户从下拉列表中选择多个信息。之后,我解析主表中的一个特定列以获取此信息

问题:

我有一个下拉多字段组合列表,允许用户选择多个选项进行搜索。图像应该更好地展示它:

我不知道如何使技术字段在我的SQL查询中工作

查询:

Technology保存用户在表单中选择的字符串。也就是说,在上面提供的图像中,字符串将是“Console、PC、Web”

技术是一个包含所有选项的列表

Private Sub button_Click()
    Dim SQLAll As String
    Dim SQL As String
    Dim Sector As String
    Sector = Me.txtSector

    If Sector = "All" Then
        Sector = " "
    End If

    SQL = "SELECT * " _
        & "FROM EveryTable " _
        & "WHERE EveryTable.Sector LIKE '*" & Sector & "*' " _
        & "AND EveryTable.Technology.Value LIKE '*" & Me.Technology & "*' " 

    Me.subformMain.Form.RecordSource = SQL
    Me.subformMain.Requery
End Sub
下图显示了包含所有信息的主表。提供我在查询中试图引用的单元格中所包含内容的概念

预期产出

根据我提供的图像,预期的输出将以每行的主形式为我提供一个子表单,其中“技术”列包含字符串“Console、PC、Web”。 如下图所示,在按下Enter按钮后,我的预期输出没有返回到我想要的结果

某位伟大的人物,用户“Tim Williams”回答了我的问题,但删除了他的答案。无论如何,这里是供将来参考的

Private Sub button_Click()

    Dim SQL As String, sep As String, arr, t
    Dim Sector As String

    Sector = Me.txtSector
    If Sector = "All" Then Sector = ""

    SQL = "SELECT * FROM EveryTable WHERE " & _
      "EveryTable.Sector LIKE '*" & Sector & "*'"

    If Len(Me.Technology) > 0 Then

        SQL = SQL & " AND ("
        sep = ""
        arr = Split(Me.Technology, ",")

        For Each t In arr
            SQL = SQL & sep & " EveryTable.Technology.Value LIKE '*" & Trim(t) & "*' "
            sep = vbCrLf & " AND "
        Next t
        SQL = SQL & ")"

    End If
    Debug.Print SQL

    Me.subformMain.Form.RecordSource = SQL
    Me.subformMain.Requery

End Sub

欢迎光临!我不明白你在问什么,这张照片也帮不了什么忙。请您花几分钟时间详细介绍一下您拥有的(例如,样本数据)、您需要做的(例如,预期输出的样本)以及您尝试过的内容。我不知道你数据库的结构,但是
EveryTable.Technology.Value
似乎不是引用字段的有效方法。另外,请参阅“”,以及创建ie的提示(裁剪图像中不需要的部分),以及向网站顶级用户提问的提示。谢谢。现在更容易理解了吗?我希望这些图片清楚地显示出我想要它做什么