VBA, MS Access MS Access в примерах

Что то делаем в течении милисекунд

Public Sub DoSomeThing(Optional iRunTimeInMilisecinds% = 353)
' Что то делаем в течении милисекунд
' Do something for milliseconds
Dim dtEndDateTime As Date, dtTempTime As Date
Dim datStart As Date, datEnd As Date, iVal%      ' Переменные только для "отчётности":
' -------------------------------------------------------------------------------------------------/
' Расчёт времени окончаеия работы (Дата-Время с точностью до ms):
    dtTempTime = iRunTimeInMilisecinds / 86400000   ' Перевод ms в формат Даты (дробная дата)
    dtEndDateTime = Date + CDate(Timer / 86400) + dtTempTime

'Дата-Время типа Now(), но с точностью до ms
    datStart = Date + CDate(Timer / 86400)       ' Время начала с точностью до ms (для "отчётности")
    
' Работа:
    dtTempTime = datStart
    Do While dtTempTime <= dtEndDateTime
        'iVal = Year(Date) * 3 'Некая работа (проверка):
        'Пересчёт типа Now(), но с точностью до ms
        dtTempTime = Date + CDate(Timer / 86400)
    Loop
' -------------------------------------------------------------------------------------------------/
'   datEnd = Date + CDate(Timer / 86400)         ' Время окончания с точностью до ms (для "отчётности")
'   Отчёт (может быть небольшое расхождение с заданным iRunTimeInMilisecinds):
'   iVal = Fix((datEnd - datStart) * 86400000)   ' Проделжительность в милисекундах (целое)
'   Debug.Print "The run time was: " & iVal & " ms."
    
End Sub
Назад ToTop
L.E. 18.10.2023
Рейтинг@Mail.ru