Hej! Kanske denna funktione hjälper dig?Summera tid i Accessdatabas
Jag håller på att bli gråhårig!
Jag har en accessdatabas som en liten VB applikation kommer att hämta data från.
I den databasen lagras tid i formatet 13:30 alltså hh:mm
Nu vill jag göra en summering av denna tid i en fråga.
Men det fungerar inte, så fort summan blir större än 23:59 så slår den runt. Den kör alltså med max 24-timmar.
I Excel kan man lösa problemet genom att ange talformatet [hh:mm]
Då struntar den i 24-timmarsbegränsningen. Men hur ställer man in talformatet på motsvarande sätt i en fråga i Access? (Jag lyckas inte med att använda [] man gör väl annorlunda i Access..)
Eller kan man inte göra det i en fråga, måste man göra nåt annat skoj?
Hoppas nån förstår vad jag menar och att densamme sitter med en lösning i bakhuvudet nånstans!Sv: Summera tid i Accessdatabas
(Förutsätter att fältet är av typen "datum/tid")
Public Function SumTime(Value As Variant) As Variant
Dim lHours As Long
Dim lMinutes As Long
If IsNull(Value) Then
SumTime = Null
Else
lHours = Value * 24
lMinutes = Value * 1440
SumTime = Format$(lHours, "0") & ":" & Format$(lMinutes Mod 60, "00")
End If
End Function
Exempel på användning:
SELECT SumTime(Sum(Table1.Time)) AS TotTime
FROM Table1;