这是我的SQL (我的任务是处理不是我制作的表的数据,我知道它们的名字很糟糕):
SQL = "SELECT [risk - original].IDrisk AS [Risk ID], [risk - original].Riskname AS [Risk Name], [risk - original].Description, " & _
"[risk - original].Category, [risk - original].InitialProbability AS [Probability], [risk - original].InitialSeverity AS [Severity], " & _
"[risk - original].InitialProbability * [risk - original].InitialSeverity AS [Risk Score], [risk - original].RootCause AS [Root Cause] " & _
"FROM [risk - original] " & _
"WHERE ([InitialSeverity] = " & Me.cboSeverity & ") OR ([InitialProbability] = " & Me.cboProbability & ") OR ([Category] = '" & Me.cboRiskCategory & "'))"
我可以让这段代码与WHERE子句一起工作,只使用单个组合框的一个条件,但是当我尝试添加所有组合框字段时,代码会失败,现在组合框被编程为(例如):
Dim mySeverity As String
mySeverity = "Select * from [risk - original] where ([InitialSeverity] = " & Me.cboSeverity & ")"
Me.riskOriginalSubform.Form.RecordSource = mySeverity
Me.riskOriginalSubform.Form.Requery
Me.cboRiskCategory = Null
Me.cboProbability = Null
在未来,我希望能够按多个组合框排序,然后从子窗体中选择数据,最后将数据导出到excel。
谢谢!
发布于 2017-09-18 15:33:06
这是一个通用的答案:
vbSql = "SELECT stuff " & _
"FROM tbl " & _
"WHERE (cmb.value = condition "
If cmb.value = condition Then
vbSql = vbSql & "AND moreSqlconditions"
End If
vbSql = vbSql & ");"
Me.subForm.Form.RecordSource = vbSql
希望这能起作用?
https://stackoverflow.com/questions/46281557
复制相似问题