Значения времени диаграммы MS Access - PullRequest
0 голосов
/ 15 апреля 2020

У меня есть график, и я поставляю ему такие значения:

TASK Time
19  2:55:12
20  3:00:00
21  3:00:00
22  5:00:00
23  7:33:00
24  7:45:00
25  9:49:48
26  51:02:42
27  72:16:12
28  208:57:00

, но по какой-то причине мой график выглядит так:

enter image description here

Я хочу, чтобы он показывал значения, такие как 24:00:00, 48:00:00 ..., но он дает мне 00:00:00 каждые 24 часа. Чтобы получить эти данные, я использую эту функцию:

Public Function FormatHourMinuteSecond( _
  ByVal datTime As Date, _
  Optional ByVal strSeparator As String = ":") _
  As String

' Returns count of days, hours, minutes, and seconds of datTime
' converted to hours, minutes, and seconds as a formatted string
' with an optional choice of time separator.
'
' Example:
'   datTime: #10:03:55# + #20:01:24#
'   returns: 30:05:19
'
' 2014-06-17. Cactus Data ApS, CPH.

  Dim strHour       As String
  Dim strMinuteSec  As String
  Dim strHours      As String
    Debug.Print Fix(datTime) * 24
    Debug.Print Hour(datTime)
  strHour = CStr(Fix(datTime) * 24 + Hour(datTime))
  ' Add leading zero to minute and second count when needed.
  strMinuteSec = Right("0" & CStr(Minute(datTime)), 2) & strSeparator & Right("0" & CStr(Second(datTime)), 2)
  strHours = strHour & strSeparator & strMinuteSec

  FormatHourMinuteSecond = strHours

End Function

1 Ответ

0 голосов
/ 15 апреля 2020

Отформатированное время становится текстом, поэтому 2, 20 и 200 будут отсортированы вместе.

Попробуйте, как предложил Марк, добавить ведущие нули, изменив эту строку:

strHour = Right("00" & CStr(Fix(datTime) * 24 + Hour(datTime)), 3)
...