我有一个下拉复选框,您可以在其中手动选择要查询的其他选项。
我想做什么:
我想制作一个搜索查询表单,该表单将允许用户从下拉列表中选择多个信息。然后,我解析主表中的特定列以获取此信息。
问题:
我有一个下拉的多字段组合列表,允许用户选择多个选项进行搜索。图片应该更好地展示它: Search Query - Select items you want to search for
我不知道如何在SQL查询中使用“技术”字段。
查询:
Me.Technology包含用户在表单中选择的字符串。字符串上方提供的图像中的I.E将是“控制台,PC,Web”。
EveryTable.Technology是一个包含所有选项的列表。
telent 192.168.100.2 2000 /tgc/rf/tx1 set gain_target -2.0.
下面是显示具有所有信息的主表的图像。提供一个关于我试图在查询中引用的单元格中保存的内容的想法。
Master table that holds all information
预期输出
根据我提供的图像,预期的输出将为我提供“行”的“主要”形式的子表格,该行的“技术”列中包含字符串“控制台,PC,Web”。 如下图所示,按Enter键后,我的预期输出没有恢复到我想要的状态。
答案 0 :(得分:0)
某位伟人,用户“ 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