Формат фильтра должен быть в том же формате, что и значение в наборе записей. Я только что столкнулся с той же проблемой с набором записей с сервера MS SQL. набор записей содержал дату в формате ГГГГ-ММ-ДД.
Это не удалось:
CalendarRS.filter = "DateField = #" & datevalue(DisplayDate) & "#"
Даже если дата совпадает, в отфильтрованном наборе записей нет записей. Если этот флажок установлен, значением, сохраненным в CalendarRS.filter, было «DateField = # 08/29/2014 #». Обратите внимание, что в нем содержатся косые черты и порядок отличается (ММ / ДД / ГГГГ)
Это удалось:
CalendarRS.filter = "DateField = #" & year(datevalue(DisplayDate)) & "-" & right("00" & month(datevalue(DisplayDate)),2) & "-" & right("00" & day(datevalue(DisplayDate)),2) & "#"
Если этот флажок установлен, значением, сохраненным в CalendarRS.filter, было «DateField = # 2014-08-2014 #». Это вернуло правильный отфильтрованный набор записей.
Для полной даты и времени вам нужно сделать то же самое и добавить час, минуту, секунду.
CalendarRS.filter = "DateField = #" & year(datevalue(DisplayDate)) & "-" & right("00" & month(datevalue(DisplayDate)),2) & "-" & right("00" & day(datevalue(DisplayDate)),2) & " " & Right("00" & Hour(datevalue(DisplayDate)),2) & ":" & Right("00" & Minute(datevalue(DisplayDate)),2) & ":" & Right("00" & Second(datevalue(DisplayDate)),2) & "#"