質問: WhereString & " AND 日付 like '*" & Me.txt日付 & "*'" のようにFormat・CDateで変換は行わずに文字列として試した時、[2020/07]だと抽出され、[2020/07/10]だと抽出されない事がありこれも原因がわからず詰まっています。 ### 補足情報(FW/ツールのバージョンなど) Access2016
回答: > > テーブルに > > 日付型で[2020/07/10 9:00:00] > > が存在している状態です。 > > > > > [2020/07]だと抽出され、[2020/07/10]だと抽出されない事があり > > > 2020/07 というような入力もありうるのでしょうか。その場合は、どのような抽出条件がご希望でしょうか。 2020/07/01 0:00:00 から 2020/07/31 23:59:59 でしょうか。 とりあえず、「2020/07/10」というように日まで入力するという前提で回答します。 ``` Dim WhereString As String If Me.txt氏名 <> "" Then WhereString = " AND 氏名 like '*" & Me.txt氏名 & "*'" End If If IsDate(Me.txt日付) Then WhereString = WhereString & " AND 日付 >= #" & Me.txt日付 & _ "# AND 日付 < #" & DateAdd("d",1,Me.txt日付) & "#" Else MsgBox "正しい日付を入力してください。" Me.txt日付.SetFocus Exit Sub End If Me.Filter = Mid(WhereString, 6) Me.FilterOn = (WhereString <> "") Me.txt氏名.SetFocus ```