尝试从名为" ComplaintsListMaster"的表中获取所有记录的计数。有一个" ComplaintDate"大于2015年1月11日。正确的值大约为70.但是当我使用下面粘贴的dcount时,它返回3951,这几乎是表中的每条记录。
DCount("[ID]", "[ComplaintsListMaster]", "[ComplaintDate] >= 11/1/2015")
有任何明显的错误吗?
我们将MS Access前端用于SQL Server后端
答案 0 :(得分:0)
您是否尝试过以下操作:
DCount("[ID]", "[ComplaintsListMaster]", "[ComplaintDate] >= #" & 11/1/2015 & "#")
日期包含在#date#
个数字符号中,其方式与单引号/撇号'string'
中字符串的方式类似。
我不确定为什么你需要等于或大于符号=>11/1/2015
。我个人会使用>10/1/2015
。
DCount("[ID]", "[ComplaintsListMaster]", "[ComplaintDate] > #" & 10/1/2015 & "#")
但两者都应该有效,所以我猜是个人偏好。
修改
我刚刚意识到我假设dd / mm / yyyy并且你有可能使用mm / dd / yyyy,所以在这种情况下,我的答案是>10/31/2015
。
答案 1 :(得分:0)
将日期包含在#
中,并始终以美国方式(mm / dd / yyyy)在VBA中写下您的日期:
DCount("[ID]", "[ComplaintsListMaster]", "[ComplaintDate] >= #11/1/2015#")
表示> = 11月1日 在这种情况下,SQL Server后端没有任何影响。
答案 2 :(得分:0)
您可能没有硬编码的日期,因此请遵循此一般指南。
此外,AllSettings_cbx
无需查询字段:
DCount