以下のアクセスの検索フォームで。。。
検索フォームの項目は以下の通りです。
○ AND ○ OR
名前 [ ]
項目 [ ]▼ [ ]▼ [ ]▼
もとになってるテーブルは
・名前
・項目1
・項目2
・項目3
・項目4
・項目5
というようなっています。
検索ボタンのコードは
Select Case Me!検索方法.Value
Case 1 'or
tempOper = " AND "
strCount = 5
Case 2 'and
tempOper = " OR "
strCount = 4
End Select
'名前
If Me!SyainName.Value <> "" Then
condName = "(T_マスタ.氏名 like '*" & Me!SyainName.Value & "*')"
WhereCond = WhereCond & tempOper & condName
End If
'項目
If Me!Koumoku1.Value <> "" Then
condKoumoku1 = "(T_マスタ.項目1 like '*" & Me!Koumoku1.Value & "*')"
condKoumoku2 = "(T_マスタ.項目2 like '*" & Me!Koumoku1.Value & "*')"
condSKoumoku3 = "(T_マスタ.項目3 like '*" & Me!Koumoku1.Value & "*')"
tempCond = tempCond & " OR (" & condKoumoku1 & " OR " & condKoumoku2 & " OR " & condKoumoku3 & ")"
End If
If tempCond <> "" Then
tempComd = Mid(tempCond, 5)
WhereCond = WhereCond & tempOper & "(" & tempCond & ")"
End If
WhereCond = Mid(WhereCond, strCount + 1)
DoCmd.OpenForm "F_検索結果_一覧", acNormal, , WhereCond
これを実行すると
クエリ式 '(OR((T_マスタ.項目1 like …')の構文エラー:演算子がありません。
と出ます。
どこを訂正すべきでしょうか?
(項目を含まない状態ではうまく検索できてました。)
Access2000です。
お礼
できました! 助かりました。本当にありがとうございます!!