Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Datetime MS Access:如何将日期添加到此表达式中的时间?_Datetime_Ms Access_Expression_Ms Access 2013 - Fatal编程技术网

Datetime MS Access:如何将日期添加到此表达式中的时间?

Datetime MS Access:如何将日期添加到此表达式中的时间?,datetime,ms-access,expression,ms-access-2013,Datetime,Ms Access,Expression,Ms Access 2013,我需要在这个表达式的时间旁边添加日期(在查询的设计视图中),以便将DateDiff函数的第二部分改为:#07/29/2016 08:00:00 AM# 我拥有的:DATEDIFF(“n”,now(),[end\u time]) 我需要什么:DATEDIFF(“n”,now(),#7/29/2016#+[end#u time]) 我所尝试的: DATEDIFF(“n”,now(),#7/29/2016#+[结束时间]) DATEDIFF(“n”,now(),#7/29/2016#和[end#u t

我需要在这个表达式的时间旁边添加日期(在查询的设计视图中),以便将
DateDiff
函数的第二部分改为:#07/29/2016 08:00:00 AM#

我拥有的:
DATEDIFF(“n”,now(),[end\u time])

我需要什么:
DATEDIFF(“n”,now(),#7/29/2016#+[end#u time])

我所尝试的:

  • DATEDIFF(“n”,now(),#7/29/2016#+[结束时间])

  • DATEDIFF(“n”,now(),#7/29/2016#和[end#u time])

  • DATEDIFF(“n”,now(),Date()+[end\u time])

  • DATEDIFF(“n”,now(),Date()&[end\u time])

  • …但它们都返回相同的错误:
    此表达式键入错误,或者太复杂而无法计算。例如,数值表达式可能包含太多复杂的元素。尝试通过将表达式的一部分指定给变量来简化表达式。

    我找到了答案

    DATEDIFF(“n”,now(),(DateValue(Date())+TimeValue([end\u time]))
    试试这个:

    1) 如果[结束时间]是日期时间类型

    DATEDIFF("n", now(), #7/29/2016#) + DATEDIFF("n", #7/29/2016#, [end_time])
    
    2) 如果[结束时间]是数字(以分钟为单位)


    你能解释一下DATEDIFF是在哪里完成的吗?它是在VBA中,还是在窗体的字段值中,还是在其他位置?它在查询(设计视图)中。因此,如果我理解正确,您有一个列存储时间,并且您希望获得从现在起到该时间的分钟数(这意味着您只选择今天的行)。对吗?不,存储时间的列是未来时间。这是生产线停止的时间,所以如果超过午夜,可能是明天。但是我想出来了,谢谢你的时间:)我本来想提出一个时间价值()但是你自己发现了。我必须正确地理解。
    Date()
    只返回日期部分,因此应用
    DateValue()
    确实是多余的,但是
    TimeValue()
    调整就是我要建议的。感谢您发布您的发现。是的,我同意这是多余的,但这似乎绕过了Access给出的错误。看起来Access只是吹毛求疵,如果这样做有效的话,
    Date()
    本身就不行。哦,好吧。
    DATEDIFF("n", now(), #7/29/2016#) + [end_time]