|
|||||||
Дата - Преобразование часов, минут и секунд в суммарное кол-во секунд и обратно
Время создания: 16.03.2019 23:43
Раздел: Разные закладки - VBA - Access - msa.polarcom.ru - 14 Преобразование Чисел и Дат
Запись: xintrea/mytetra_db_adgaver_new/master/base/1532018373e8tutbfl53/text.html на raw.githubusercontent.com
|
|||||||
|
|||||||
Дата - Преобразование часов, минут и секунд в суммарное кол-во секунд и обратноРаботает примерно так: Private Sub testTimeInSeonds() Dim i As Long Dim h As Long, m As Long, s As Long, x As Long i = 3725 'Задаем время в секундах h = esSecondsToTime(i, 1) m = esSecondsToTime(i, 2) s = esSecondsToTime(i, 3) x = esTimeToSeconds(h, m, s) Debug.Print " " & i & " сек. это = " & h & " ч. + " & m & " мин. + " & s & " сек." Debug.Print " " & h & " ч. + " & m & " мин. + " & s & " сек. = " & x & " сек." End Sub
3725 сек. это = 1 ч. + 2 мин. + 5 сек. 1 ч. + 2 мин. + 5 сек. = 3725 сек.
Private Function esSecondsToTime(lngSec As Long, WhatReturn As Byte) As Long 'es 27.08.04 'Преобазование времени в секундах в Часы, Минуты или Секунды ' по аргументу WhatReturn ' 1 - Часы ' 2 - Минуты ' 3 - Секунды '-------------------------------------------------------------------- Dim h As Long, m As Long, s As Long, x As Long On Error GoTo SecondsToTimeErr x = lngSec h = x \ 3600 x = x - (h * 3600) m = x \ 60 x = x - m * 60 s = x Select Case WhatReturn Case 1: esSecondsToTime = h 'Возвращаем целые ЧАСЫ Case 2: esSecondsToTime = m 'Возвращаем целые МИНУТЫ (остаток от часов) Case 3: esSecondsToTime = s 'Возвращаем остаток секунд Case Else: esSecondsToTime = 0 End Select Exit Function SecondsToTimeErr: esSecondsToTime = 0 End Function Private Function esTimeToSeconds(lngH As Long, lngM As Long, lngS As Long) As Long 'es 27.08.04 'Возвращает результат преобазования Часов,Минут и Секунд в суммарное кол-во секунд 'По аргументам ' lngH - кол-во часов ' lngM - кол-во минут ' lngS - кол-во секунд '-------------------------------------------------------------------- On Error GoTo TimeToSecondsErr esTimeToSeconds = lngH * 3600 esTimeToSeconds = esTimeToSeconds + lngM * 60 esTimeToSeconds = esTimeToSeconds + lngS Exit Function TimeToSecondsErr: esTimeToSeconds = 0 End Function |
|||||||
Так же в этом разделе:
|
|||||||
|
|||||||
|