重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
vb把数值转化为时间格式:
创新互联建站是一家专业提供黔江企业网站建设,专注与网站设计制作、成都网站制作、HTML5建站、小程序制作等业务。10年已为黔江众多企业、政府机构等服务。创新互联专业网站制作公司优惠进行中。
VB点虐 中 取系统时间
Dim datestr As String = ""
datestr = Format(Now(), "yyyy/MM/dd H:mm:ss ffff")
用户定义的日期/时间格式(Format 函数)
转化代码:
Dim t As Integer, t1 As Integer, t2 As Integer, s As String
Dim tim As Date
Dim i As Integer, j As Integer
Private Sub Command1_Click()
s = InputBox("分钟数:", "输入", 67)
If s = "" Then Exit Sub
t = Val(s)
If t = 0 Then Exit Sub
t1 = t \ 60
t2 = t Mod 60
s = t1 ":" t2
tim = Format(s, "hh:mm:ss")
Text1.Text = tim
Timer1.Interval = 1000
Timer1.Enabled = True
End Sub
Private Sub Timer1_Timer()
Dim tt1 As Integer, tt2 As Integer, tt3 As Integer, tt As String
tt = Text1.Text
tt1 = Val(Left(tt, Len(tt) - 6))
tt2 = Val(Mid(tt, Len(tt) - 4, 2))
tt3 = Val(Right(tt, 2))
tt3 = tt3 - 1
If tt3 0 Then tt3 = 59: tt2 = tt2 - 1
If tt2 0 Then tt2 = 59: tt1 = tt1 - 1
If tt1 0 Then Timer1.Enabled = False: Exit Sub
tt = tt1 ":" tt2 ":" tt3
tim = Format(tt, "hh:mm:ss")
Text1.Text = tim
End Sub
将输入的字符串用各种方法尝试转换为日期变量。然后对再将日期变量输出回textbox中。
这里要做的就是用try 配合 各种转换为日期变量的函数来得到一个日期结果。如果所有格式都无法转为日期,则可以提示用户无法转换 或是根本 不操作。
这个简单。dim time1 datetime ="1:20:30"dim h as int =time1.tostring("hh")dim M as int =time1.tostring("MM")dim S as int=time1.tostring("ss")dim SUMfen as double=h*60+M+S/60SUMfen就是最后 的结果。语法你自己修改下。纯手打。
Debug.Print Format(41477.39915, "yyyy-mm-dd hh:mm:ss")
结果显示 2013-07-22 09:34:47
VB中可将日期作为实数的一部分来存储。小数点左边的数值表示日期:小数点右边的数值表示时间。负的数值表示在1899 年 12 月 30 日 之前。所以每一天可以用一个整数来表示(以1899-12-30 为0,该日之后为正数,之前为负数) ,对于MSVB 的合法日期,即#100-1-1# 到#9999-12-31#,就有-657434~2958465来表示。
对于给定的日期,用Clng()可以获得该日期的整数,反过来,用Cdate()可以将-657434~2958465范围内的任意整数转换为相应的日期,但问题是,它是如何转换过来的?
公历就是一种阳历,平年365天,闰年366天,每四年一闰,每满百年少闰一次,到第四百年再闰,即每四百年中有97个闰年。公历的历年平均长度(365.25日)与回归年(365.242189日)只有26秒之差,要累积3300年才差一日。
下面就年份的转换作一分析:
Function myyear(ByVal datenum As Long) As Integer
myyear = 1900 + Int((datenum + Int((datenum - 15) / 36525) - Int((datenum - 15) / 146100 + 1.75)) / 365.25)
End Function
以上代码完全自创,但说实话,觉得自己也是吃饱撑的没事干。