我正在尝试使用Access从数据库中选择特定字段(使用SQLserver)。 数据类型是一个日期,我要检查的是我选择的日期与当前日期之间的日期差是否小于4天 我正在Access中编写此文件,因为这是我的软件所在的位置。 我收到错误“运行时错误13:类型不匹配”。 我要获取的列(ReleaseDate)中的数据类型为Date。
Dim SQLVerDate As Date
SQLVerDate = "SELECT ReleaseDate FROM tblVersionReleasesNew ORDER BY ReleaseDate DESC"
If DateDiff("d", Date, SQLVerDate) < 4 Then
VerLbl.ForeColor = 0
Else
VerLbl.ForeColor = 10
End If
答案 0 :(得分:0)
完成此操作的几种方法。
如果只想在表中使用最新的ReleaseDate,请在查询中使用Max()函数:
Dim rs AS DAO.Recordset
Set rs = CurrentDb.OpenRecordset "SELECT Max(ReleaseDate) FROM tblVersionReleasesNew"
If Date() - rs!ReleaseDate < 4 Then
VerLbl.ForeColor = 0
Else
VerLbl.ForeColor = 10
End If
或使用域汇总功能:
If Date() - DMax("ReleaseDate","tblVersionReleasesNew") < 4 Then
VerLbl.ForeColor = 0
Else
VerLbl.ForeColor = 10
End If
或者代替VBA和标签控件,使用文本框和条件格式,并在文本框中使用域聚合表达式。