vba访问-日期差异

vba访问-日期差异,vba,Vba,我有两个文本框,用户将在其中输入开始和结束时间。当我使用以下代码时 Text88 = DateDiff("n", TEXTStart, TEXTFinish) “Text88”框将完美地以分钟为单位计算时间。ie 06:00>14:00=480分钟。但是,如果我输入22:00>06:00,而不是等于480分钟,它将注册为-960 我如何才能获得它,使“开始”框中的任何内容都必须完成,因此当我输入22:00>06:00的时间时,它将注册为480分钟?您需要控制用户何时在第一个文本框中写入

我有两个文本框,用户将在其中输入开始和结束时间。当我使用以下代码时

    Text88 = DateDiff("n", TEXTStart, TEXTFinish)
“Text88”框将完美地以分钟为单位计算时间。ie 06:00>14:00=480分钟。但是,如果我输入22:00>06:00,而不是等于480分钟,它将注册为-960


我如何才能获得它,使“开始”框中的任何内容都必须完成,因此当我输入22:00>06:00的时间时,它将注册为480分钟?

您需要控制用户何时在第一个文本框中写入更长的时间。因为DateDiff期望第二个参数的日期大于第一个参数的日期。因此,如果是这种情况,在计算DateDiff之前,您应该将DateAdd应用于第二次,并将一天添加到日期。然后,执行DateDiff,结果将是您期望的结果

大概是这样的:

If TEXTFinish > TEXTStart Then
    Text88 = DateDiff("n", TEXTStart, TEXTFinish)
Else
    Text88 = DateDiff("n", TEXTStart, DateAdd("d", 1, TEXTFinish))
End If

非常感谢你的帮助,这真是一种享受!