dポイントプレゼントキャンペーン実施中!

ACCESSにて 登録したデータの検索機能を作っているのですが、
文字列での検索は引用したサンプルプログラムの通りにして
問題なく検索できるのですが、日付の検索をすると、1件も検索されません。
どのような文法的な誤りがあるかご指導ください。

検索での「日付の比較」部分のコード

strWhere = strWhere & "R業務依頼日 = #" & "Me![txtYKSDay]" & "#" 

strWhereでは、SELECT文のWHERE句の検索条件部分を文字列として作成しています。
後で、リストボックスの値集合ソースに突っ込む為。

私のレベルは、開発の経験はありません。
正規化とかクエリーが理解できるレベルです。
ACCESS:2000 OS:WindowsMe

800文字の制限を越えてしまったので、文字列の比較の部分と
日付の比較の部分のコードを付加します。
--------------------------------------------
'変数の初期設定
strWhere = ""

  (略)

'業務依頼日で検索
If IsNull(Me![txtYKSDay]) <> True Then
If strWhere <> "" Then
strWhere = strWhere & " And "
End If
strWhere = strWhere & "R業務依頼日 = #" & "Me![txtYKSDay]" & "#"  <==ココ
End If

  (略)

'フリガナを部分一致で検索
If IsNull(Me![txtYKSFurigana]) <> True Then
If strWhere <> "" Then
strWhere = strWhere & " And "
End If
strWhere = strWhere & "Kフリガナ Like '*" & Me![txtYKSFurigana] & "*'"
End If

A 回答 (1件)

とりあえず、Me![txtYKSDay]の部分がダブルクォートで囲まれているから。

(質問時のタイプミス?)

ブレークポイントで止めて、strwhereの中身がどうなっているのか確認してみてください。

#と#間が日付になっていなかったら、format関数で日付の形式にするとできると思います。
    • good
    • 0
この回答へのお礼

解決しました。ご指摘の部分が原因でした。

>Me![txtYKSDay]の部分がダブルクォートで囲まれているから

文法の基本が理解できていない為、初歩的な部分で引っ掛かって
しまいました。
迅速且つ的確なご指摘、ありがとうございました。

お礼日時:2006/08/20 01:08

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す