VB中时间相减问题

做机房收费系统的时候,遇见一个问题,就是上机时间与下机时间的小时差该如何算。

出现了下面这种情况:

上机和下机的时间差距有两天之多,这该如何算时间差呢。这时用到了datediff()这个函数

DateDiff(timeinterval,date1,date2 [,firstdayofweek [,firstweekofyear]])

  允许数据类型: timeinterval 表示相隔时间的类型,代码为:
  年份 yy、yyyy 季度 qq、q
  月份 mm、m
  每年的某一日 dy、y
  日期 dd、d
  星期 wk、ww
  工作日 dw
  小时 hh
  分钟 mi、n
  秒 ss、s
  毫秒 ms

比如

?DateDiff( "M ","2000-9-1 ","2002-2-1 ") 
17

而我发现,这个系统在应用于学校的时候,晚上必然不会让同学通宵上机的,那么怎么会出现当天上机,明天或后天下机的情况。这时就用到了强制下机。在晚上固定的时间强制学生下机。保证当天上机,当天下机。想想跟网吧通宵是一个道理,在晚上10点的时候,都让会员下机或者转换为通宵上机。程序设计真是来源于生活...

如此来看,只需让上下机的时间相减就可以了,这种情况相减岂不是更加简单。只需套用

format(#7:12:45 PM# - #5:23:34 PM#,"HH:mm:SS ")这样一个格式就OK了。

相关文章

Format[$] ( expr [ , fmt ] ) format 返回变体型 format$ 强...
VB6或者ASP 格式化时间为 MM/dd/yyyy 格式,竟然没有好的办...
在项目中添加如下代码:新建窗口来显示异常信息。 Namespace...
转了这一篇文章,原来一直想用C#做k3的插件开发,vb没有C#用...
Sub 分列() ‘以空格为分隔符,连续空格只算1个。对所选...
  窗体代码 1 Private Sub Text1_OLEDragDrop(Data As Dat...