我需要很很很很的计算时间,还有没有什么其它更好的办法,谢谢大家

解决方案 »

  1.   

    timeGetTime 相对比较准的 他是定位于多媒体时间计算的 The timeGetTime function retrieves the system time, in milliseconds. The system time is the time elapsed since Windows was started.注意in milliseconds
      

  2.   

    Option Explicit
    Private Declare Function GetTickCount Lib "kernel32" () As Long
    Private Declare Function timeGetTime Lib "winmm.dll" () As Long
    Private Sub Command1_Click()
        Dim t As Long
        Dim i As Long
        t = timeGetTime
        While timeGetTime - t <= 10000
            i = i + 1
        Wend
        Debug.Print i
        i = 0
        t = GetTickCount
        While GetTickCount - t <= 10000
            i = i + 1
        Wend
        Debug.Print i
    End Sub
    ------------------
    呵呵,不是看一秒多少次的,你运行下看看吧。那个准我也不会看。
      

  3.   

    Private Declare Function QueryPerformanceCounter Lib "kernel32" (lpPerformanceCount As Any) As Long
    Private Declare Function QueryPerformanceFrequency Lib "kernel32" (lpFrequency As Any) As Longdim curFrequency as currency
    dim curStart as currency
    dim curEnd as currencyQueryPerformanceFrequency curFrequency
    QueryPerformanceCounter curStart
    需要记时的代码
    QueryPerformanceCounter curEnd
    Debug.print "用时:" & (curEnd - curStart) / curFrequency & "秒"
      

  4.   

    计算时间很准的方法(简单方便、意义明确):dim dttime as date,dbltime as doubledtTime=now:dbltime=timer
    dttime=dtTime+(dbltimer-fix(dbltime))/86400'''Unit of Day当前时间,精确到1ms,与系统时间完全一样!