问下大家,四位数字怎么转换为时间?
vb吧
全部回复
仅看楼主
level 10
zhx40672203 楼主
问下大家,四位数字怎么转换为时间,比如1230,转换为12:30?
因为后续需要对这四位数字排序,还需要计算差值
2021年01月02日 08点01分 1
level 15
Format(1230, "00:00")
但是转换成时间跟你的后续有什么关系么?
2021年01月02日 12点01分 2
谢谢回复,我的想法是这样,目前有几十个四位数字,以文本格式存储在excel表格中,这四位数字前两位是小时,后两位是分钟,我后续需要把他们排序以后,计算时间中的空当,并输出空当最大的时间区间
2021年01月02日 22点01分
@zhx40672203 直接存now或者time不香么,用DateDiff算时间差,
2021年01月18日 00点01分
level 11
明白了,你主要是用来计算时间差
上面老大给你加了冒号之后,已经解决了大问题
下面就用转换函数,将上面的结果(字符串型)数据,再转换成时间类型数据,就OK了
2021年01月04日 02点01分 3
是的,是这个思路,我去试一下看行不行,我现在直接用百进制四位数字计算时间间隔了,虽然代码繁琐一点,目前暂时也实现目的了[开心]谢谢回复
2021年01月04日 03点01分
@zhx40672203 有何计算时间差的函数diff什么什么的
2021年01月04日 03点01分
@璐村惂鐢ㄦ埛_0748V5Z馃惥 对,datediff,但之前一直没办法把4位数字转为date格式的数据,计算结果一直不怼
2021年01月04日 03点01分
@zhx40672203 cdate,还是ctime,我记不清了。你可以试试看应该可以把字符串类型转换成日期/时间类型
2021年01月04日 03点01分
level 11
这是一个原始的办法。
但我想,应该有其他办法,我记得似乎用#还是什么,但当时似乎是用在sql语句里,记不清了
2021年01月04日 03点01分 4
timeserial(12-7,34-21,00)是这个意思吗?时-时,分-分
2021年01月04日 04点01分
@骄傲地蚂蚁 这样算,可能有借位问题?
2021年01月04日 06点01分
2021年01月04日 12点01分
吧务
level 13
Text3.Text = CStr(DateDiff("S", CDate(Text1.Text), CDate(Text2.Text)))
Text1 是开始时间;Text2 是终止时间;Text3 是相差时间的秒数。
2021年01月18日 01点01分 5
当然:Text1 和 Text2 中放的数据要符合时间的格式。
2021年01月18日 01点01分
对于四位数字,【t1 = Mid(CStr(a1,1, 2)) & ":" & Mid(CStr(a1, 3, 2))】【t2 = Mid(CStr(a2,1, 2)) & ":" & Mid(CStr(a2, 3, 2))】
2021年01月18日 01点01分
1