Access开发培训
网站公告
·Access专家课堂QQ群号:151711184    ·Access快速开发平台下载地址及教程    ·欢迎加入Access专家课堂微信群!    ·如何快速搜索本站文章|示例|资料    
您的位置: 首页 > 技术文章 > Access数据库-模块/函数/VBA

计算运行时间

时 间:2021-12-31 19:58:35
作 者:杨雪   ID:42182  城市:南京
摘 要:本主题介绍 Access 如何存储日期/时间数据类型以及当您计算或比较日期和时间时可能收到意外结果的原因。
正 文:

存储日期/时间数据:
Access 将 Date/Time 数据类型存储为双精度浮点数, (15 位小数) 。 双精度数的整数部分表示日期;小数部分表示时间。

有效日期值范围从 A.D.) 年 1 月 1 日 (日 -647,434 到 A.D.) 年 12 月 31 (2,958,465。 日期值 0 表示 1899 年 12 月 30 日。 Access 将 1899 年 12 月 30 日之前的日期存储为负数。

有效时间的值范围是从 .0 (00:00:00) 到 .99999 (23:59:59)。 数字值是按天计算的。 将数字值乘以 24 可以将该数字值转换成小时、分钟和秒。

双精度数          日期部分              实际日期                  时间部分          实际时间
1.0                    1                1899 年 12 月 31 日            .0                 12:00:00 A.M.
2.5                    2                1900 年 1 月 1 日               .5                 12:00:00 P.M.
27468.96875    27468           1975 年 3 月 15 日             .96875           11:15:00 P.M.
33914.125        33914          1992 年 11 月 6 日


计算时间数据:
由于时间值存储为一天 24 小时的时间,因此当您计算的时间间隔大于 24 小时时,可能会得到格式不正确的结果。 要解决此行为,您可以创建一个用户定义的函数,以确保时间间隔的格式正确。

以下过程说明如何使用 Format 函数来设置时间间隔的格式。 此过程接受两个时间值,并将这两个值之间的间隔以几种不同的格式显示到“立即”窗口。
Function ElapsedTime(endTime As Date, startTime As Date) 
    Dim strOutput As String 
    Dim Interval As Date 
     
    ' 计算时间间隔. 
    Interval = endTime - startTime 
  
    ' 以秒为单位格式化并打印时间间隔. 
    strOutput = Int(CSng(Interval * 24 * 3600)) & " Seconds" 
    Debug.Print strOutput 
         
    ' 以分钟和秒为单位格式化并打印时间间隔. 
    strOutput = Int(CSng(Interval * 24 * 60)) & ":" & Format(Interval, "ss") _ 
        & " Minutes:Seconds" 
    Debug.Print strOutput 
     
    ' 以小时、分钟和秒为单位格式化并打印时间间隔. 
    strOutput = Int(CSng(Interval * 24)) & ":" & Format(Interval, "nn:ss") _ 
           & " Hours:Minutes:Seconds" 
    Debug.Print strOutput 
         
    ' 以天、小时、分钟和秒为单位格式化并打印时间间隔. 
    strOutput = Int(CSng(Interval)) & " days " & Format(Interval, "hh") _ 
        & " Hours " & Format(Interval, "nn") & " Minutes " & _ 
        Format(Interval, "ss") & " Seconds" 
    Debug.Print strOutput 
 
End Function


Access软件网官方交流QQ群 (群号:54525238)       Access源码网店

常见问答:

技术分类:

相关资源:

专栏作家

关于我们 | 服务条款 | 在线投稿 | 友情链接 | 网站统计 | 网站帮助