VBA时间翻倍

时间:2018-10-31 12:36:12

标签: vba excel-2010

我有一个VBA用户表单,当我在输入数据后按Save(保存)时,它会写入电子表格并将我的时间和日期设置为Now(),并将其写入电子表格,然后将now()值分为时间和日期,当我读回日期和日期时,我会得到日期,但是我的时间是十进制格式,我想将十进制数字转换回时间。谢谢的公式是什么?我的十进制数字有点像“ 0.12425576899”,所以到目前为止,我发现了它,但是将其转换为“ 00:double:00的分钟数”,这里是代码

Public Function FromDecimalTime(ByVal t As Double) As Date
FromDecimalTime = TimeSerial(0, Fix(t), (t - Fix(t)) * 60)
End Function

1 个答案:

答案 0 :(得分:1)

以下内容将Double转换为Date格式。为了只显示日期格式的时间部分,请使用Format函数:

Sub trythis()
Dim t As Double
t = Now()
Debug.Print CDate(t)
Debug.Print Format(t, "hh:mm:ss")

End Sub