在Access中使用多个组合框作为查询条件不起作用,但使用一个组合框起作用??如何使所有组合框工作



当我使用一个组合框作为标准时,我看起来很好,但使用更多的组合框,尽管遵循相同的步骤是不起作用的。我不使用SQL,但我使用的是Design视图。

如何使所有组合框协同工作以提供所需的标准。

如果您希望使用从多个组合框中选择的数据筛选表单或列表框,则需要根据所做的选择"动态"构建RowSource。

以下是一些示例代码,它使用从2个组合框(cboCountry和cboRMZone(中选择的内容来创建列表框(lstCountry(的RowSource:

Private Sub cboCountryZone_AfterUpdate()
Call sSearchMultiple
End Sub
Private Sub cboRMZone_AfterUpdate()
Call sSearchMultiple
End Sub
Private Sub Form_Load()
Call sSearchMultiple
End Sub
Private Sub sSearchMultiple()
On Error GoTo E_Handle
Dim strSQL As String
If Not IsNull(Me!cboCountryZone) Then strSQL = strSQL & " AND CountryZone_PK=" & Me!cboCountryZone
If Not IsNull(Me!cboRMZone) Then strSQL = strSQL & " AND RMZone_PK=" & Me!cboRMZone
If Left(strSQL, 4) = " AND" Then
strSQL = " WHERE " & Mid(strSQL, 6)
End If
If Len(strSQL) > 0 Then
Me!lstCountry.RowSource = "SELECT CountryName FROM dbo_svr_Country " & strSQL & " ORDER BY CountryName ASC;"
Else
Me!lstCountry.RowSource = "SELECT CountryName FROM dbo_svr_Country ORDER BY CountryName ASC;"
End If
sExit:
On Error Resume Next
Exit Sub
E_Handle:
MsgBox Err.Description & vbCrLf & vbCrLf & "Form3!sSearchMultiple", vbOKOnly + vbCritical, "Error: " & Err.Number
Resume sExit
End Sub

问候,

相关内容

  • 没有找到相关文章

最新更新