MS Access Form中从TextBox到SQL的日期

问题描述

在我国,我们使用格式2020. 09. 31。 当我尝试使用它来构建SQL查询时,它不起作用。

    IncomingInvoiceList.RowSource = "SELECT InvoiceDate,distributorName FROM IncomingInvoice WHERE InvoiceDate BETWEEN #2020/04/31# AND " & TextBox & ")" 

可以使用静态的#2020/04/31#格式,但不能使用TextBox数据(在我们的国家中为短格式)。如何投放?

解决方法

将文本框的值格式设置为日期的字符串表达式-并且不要包含无效的四月天:

IncomingInvoiceList.RowSource = "SELECT InvoiceDate,DistributorName FROM IncomingInvoice WHERE InvoiceDate BETWEEN #2020/04/30# AND #" & Format(TextBox,"yyyy\/mm\/dd") & "#)"