VBA中 怎么获得时间的毫秒数 用time只能得到秒,毫秒怎么算出来啊

VBA中 怎么获得时间的毫秒数 用time只能得到秒,毫秒怎么算出来啊,第1张

系统自带的now 或者Timer函数都只能获取到秒,一个相关的API,使用Windows API的winmmdll其中的timeGetTime 可以获得毫秒数,这个值是从开机到现在的毫秒数。

Private Declare Function timeGetTime Lib "winmmdll" () As Long

Private Sub btnTest_Click()

Dim StartMS As Long

Dim EndMS As Long

Dim MS As Long

StartMS = timeGetTime() '开始毫秒数

While timeGetTime < StartMS + 200 '循环等待

DoEvents '转让控制权,以便让 *** 作系统处理其它的事件

Wend

EndMS = timeGetTime() '结束毫秒

MS = EndMS - StartMS '取两者相差的毫秒数

MsgBox "毫秒数:" & MS

End Sub

While timeGetTime < StartMS + 200 '循环等待

DoEvents '转让控制权,以便让 *** 作系统处理其它的事件

Wend

上面三句代码网友可以更换成自己实际计算过程的代码。

Sub 提取日期()

Dim temp

Dim str As String

Dim d As Date

str = "l4-122344/201238"

temp = Split(str, "/")(1)

d = DateSerial(Split(temp, "")(0), Split(temp, "")(1), Split(temp, "")(2))

End Sub

'以对话框显示当前时间的时、分、秒

MsgBox "当前时间:" & Time & Chr(10) & _

"时:" & Hour(Time) & Chr(10) & _

"分:" & Minute(Time) & Chr(10) & _

"秒:" & Second(Time)

Sub 获取文件修改时间()

Dim Ipath, Ifile As String, Arr(), N As Integer

Ipath = "d:\pic\"

Ifile = Dir(Ipath, vbNormal)

If Ifile <> "" Then

Do

N = N + 1

ReDim Preserve Arr(1 To 2, 1 To N)

Arr(1, N) = Ipath & Ifile

Arr(2, N) = FileDateTime(Ipath & Ifile)

Ifile = Dir

Loop While Ifile <> ""

Range("A1")Resize(N, 2) = WorksheetFunctionTranspose(Arr)

End If

End Sub

楼主的需求请再明确下

去时间的小时,是将时长换算成小时,还是将某个时间的"小时”提取出来

计算小时差,两个时间相减结果是天数24就是小时,再60就是分钟

取小时是hour,分钟minute

以上就是关于VBA中 怎么获得时间的毫秒数 用time只能得到秒,毫秒怎么算出来啊全部的内容,包括:VBA中 怎么获得时间的毫秒数 用time只能得到秒,毫秒怎么算出来啊、VBA excel 提取字符串中的日期、excel中编程vba 怎么得到小时数公式怎么写,分钟和秒种都不要。谢谢等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9798660.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存