发生的情况是,您输入的短日期在用户输入的当天开始的午夜产生datetime值。因此,范围2009-1-1到2009-1-10(或系统上使用的任何短日期格式)正在搜索从1月1日开始 到1月10日 开始 的事件,但不包括发生在1月10日晚些时候。
若要更正,请在用户输入搜索的结束日期前加1。搜索时间从1月1日开始到1月11日开始,包括1月10日的所有事件。
最终,发生在1月11日午夜 恰好 发生的事件可以通过这种方式进入您的结果,因此,您应该使用BETWEEN而不是
studystartdatetime >= forms!frmMain!txtStartDate AND studystartdatetime < forms!frmMain!txtEndDate + 1