josephbupe
Registered User.
- Local time
- Today, 06:54
- Joined
- Jan 31, 2008
- Messages
- 247
Hi,
Below is part of the code I am using to query database on a form. However, the combination of the two blocks of code (i.e. ' Check for Sex/Gender in multiselect list and ' Check for Rank in multiselect list) below is not working. Instead I get Syntax error (missing operator) in query expresiion '[Sex] In("Female")[Rank] In("Femal)'. But when I remove any one of the two the query works without an error.
How do I resolve this?
Joseph
Below is part of the code I am using to query database on a form. However, the combination of the two blocks of code (i.e. ' Check for Sex/Gender in multiselect list and ' Check for Rank in multiselect list) below is not working. Instead I get Syntax error (missing operator) in query expresiion '[Sex] In("Female")[Rank] In("Femal)'. But when I remove any one of the two the query works without an error.
Code:
'[COLOR=SeaGreen] Check for Sex/Gender in multiselect list[/COLOR]
For Each varItem In Me.lstGender.ItemsSelected
Answer = Answer & Me.lstGender.ItemData(varItem) & ""","""
Next varItem
If Len(Answer & vbNullString) <> 0 Then
Answer = Left(Answer, Len(Answer) - 2)
End If
If Len(Answer & vbNullString) <> 0 Then
varWhere = varWhere & "[Sex] In(""" & Answer & ")"
End If
Code:
' [COLOR=SeaGreen]Check for Rank in multiselect list[/COLOR]
For Each varItem In Me.lstRank.ItemsSelected
Answer = Answer & Me.lstRank.ItemData(varItem) & ""","""
Next varItem
If Len(Answer & vbNullString) <> 0 Then
Answer = Left(Answer, Len(Answer) - 2)
End If
If Len(Answer & vbNullString) <> 0 Then
varWhere = varWhere & "[Rank] In(""" & Answer & ")"
End If
Code:
' [COLOR=SeaGreen]Check if there is a filter to return...[/COLOR]
If IsNull(varWhere) Then
varWhere = ""
Else
varWhere = "WHERE " & varWhere
' [COLOR=SeaGreen]strip off last "AND" in the filter[/COLOR]
If Right(varWhere, 5) = " AND " Then
varWhere = Left(varWhere, Len(varWhere) - 5)
End If
End If
BuildFilter = varWhere
End Function
Joseph