Private Sub Command1_Click()
Dim d As Date
d = "8:18:39"
Dim s As Integer
s = 33
d = DateAdd("s", s, d)
MsgBox Format(d, "h点n分s秒") '把日期格式化为 *点 *分 *秒
End Sub
DateAdd函数对日期变量进行加减。
第一个参数是加减的单位,(s表示秒;h:时; n:分; y:年; m:月; d:日)
第二个参数加上一个整形数,如是负值就是减。
第三个日期参数
Private Sub Cmd1_Click()
Dim NowTime As String '"x时x分x秒"
Dim NowH, NowM, NowS, Sum As Long '(分别对应“小时,分钟,秒,总和”)
Dim S As Long 'S为需要加上的秒数
'定义变量
NowTime = "23时59分21秒" '变量 - 可以修改的
S = 575 '变量 - 可以修改的
NowTime = Replace(NowTime, "时", "%")
NowTime = Replace(NowTime, "分", "%")
NowTime = Replace(NowTime, "秒", "%")
'方便处理的转换
NowH = Split(NowTime, "%")(0)
NowM = Split(NowTime, "%")(1)
NowS = Split(NowTime, "%")(2)
'获得时分秒
Sum = NowH * 3600 + NowM * 60 + NowS + S
Sum = Sum Mod CLng(86400)
'这两步比较复杂,把时分秒转化为秒,然后除掉一天的时间(如果
'没超出一天的时间则不变)
NowH = Sum \ 3600
NowM = (Sum - NowH * 3600) \ 60
NowS = Sum - 3600 * NowH - 60 * NowM
'计算出新的 时分秒
NowTime = NowH & "时" & NowM & "分" & NowS & "秒"
'返回最终值
End Sub '这个过程略复杂,吾主要是按照楼主所要求的格式编的,请楼主参考
楼主参考一下:
Private Sub Command1_Click()
Dim t1 As Date, t2 As Date
t1 = Now()
'计算15秒后的时间
t2 = t1 + CDate("0:0:15")
MsgBox "当前时间:" & t1 & vbLf & "15秒之后:" & t2, 32
End Sub
取出当前的秒数,加上s后进行判断,如果大于60就分+相应的分数,如果大于3600就时+相应的时数。