在VBA中查询特定日期和时间之间的数据

时间:2016-08-04 09:30:30

标签: excel-vba ms-access access-vba querying vba

我有一个访问数据库,其中每个数据都有两个不同列的日期和时间。

我需要使用VBA在excel中运行查询,该查询会在两个特定日期和时间之间获取数据(例如:01/05/2016 13:15和03/05/2016 10:11)

我的查询如下:

SQL = "SELECT * FROM " & database & " WHERE symbol='" & companyName & _
      "' AND AdmitDate BETWEEN " & (fromDate + fromTime) & " AND " & (toDate + toTime) & ""

然而,它给我一个语法错误,上面写着:

  

'查询表达式中缺少运算符'

我无法弄清楚我哪里出错了。

请帮忙!

1 个答案:

答案 0 :(得分:1)

您需要正确的字符串表达式来表示日期/时间值。格式可以创建这些:

SQL = "SELECT * FROM " & database & " WHERE symbol='" & companyName & "' AND AdmitDate BETWEEN #" & Format(fromDate + fromTime, "yyyy\/mm\/dd hh\:nn\:ss") & "# AND #" & Format(toDate + toTime, "yyyy\/mm\/dd hh\:nn\:ss") & "#"