/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Dato/tid
Fra : Andreas Slot-Henriks~


Dato : 27-10-03 10:51

Hej...

Jeg har en DB, hvor div. klokkeslæt er gemt i MS's eget dato-decimal-format.

For at omregne dette, har jeg lavet nedenstående funktion. Altså vil
0,2568875 give
et resultat på: 6:09, hvilket jo også er helt korrekt!!! 6:09 svarer jo også
til 6,15 i alm.
decimal-tal... Nu er mit problem så følgende: Hvordan for jeg lavet en lille
funktion, der
laver det omvendte af nedenstående: Altså omregner fra alm. deciamal 6,15
til MS's eget
dato-decimal-format: 0,2568875.


Function strKlokken(dblKlokken As Double)

If IsNull(dblKlokken) Or dblKlokken = 0 Then
strKlokken = "0:00"
Exit Function
End If

Dim dtoValue As Date
Dim strValue As String
Dim strMinutes As String

dtoValue = CDate(dblKlokken)
strValue = Format(DateDiff("h", CDate(0), dtoValue), "##,###") & ":"

strMinutes = Minute(dtoValue)
If Len(strMinutes) = 1 Then strMinutes = "0" & strMinutes

strKlokken = strValue & strMinutes

End Function



mvh.
Andreas



 
 
Jens Gyldenkærne Cla~ (27-10-2003)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 27-10-03 11:46

Andreas Slot-Henriksen skrev:

> Jeg har en DB, hvor div. klokkeslæt er gemt i MS's eget
> dato-decimal-format.

Hvad er grunden til at du ikke bruger normalt datoformat?


> For at omregne dette, har jeg lavet nedenstående funktion.
> Altså vil 0,2568875 give
> et resultat på: 6:09, hvilket jo også er helt korrekt!!! 6:09
> svarer jo også til 6,15 i alm. decimal-tal...

Jeg kender ikke det format du nævner, men det er svært at se
hvorfor 6,15 = 0,2568875.

Men hvis Cdate(dblValue) giver en dato, så kunne man vel forestille
sig at Cdbl(dateValue) giver en double - og at

   Cdbl( Cdate(dblValue) ) = dblValue
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Andreas Slot-Henriks~ (27-10-2003)
Kommentar
Fra : Andreas Slot-Henriks~


Dato : 27-10-03 12:28

> Hvad er grunden til at du ikke bruger normalt datoformat?
Jeg har lavet et tidsregistreringssystem. Pga. meget statistik osv.
valgte (pga. lethed) at lægge det i MS's tidsformat. ...og fordi
der i forvejen lå en del poster i samme format fra noget tidl.
registrering...!

> Jeg kender ikke det format du nævner, men det er svært at se
> hvorfor 6,15 = 0,2568875.
Heller ikke her - men du kan f.eks. i Excel prøve i celle A1 (format:
klokkeslæt) at skrive 6:09 (6,15 timer) og i B1 (format: decimal) at
skrive =A1 ...så vi du også her få værdien 0,2568875 !

> Men hvis Cdate(dblValue) giver en dato, så kunne man vel forestille
> sig at Cdbl(dateValue) giver en double - og at
> Cdbl( Cdate(dblValue) ) = dblValue
Det troede jeg nemlig også... men sådan "spiller klaveret" åbenbart slet
ikke ;o(


mvh.
Andreas Slot-Henriksen



Søg
Reklame
Statistik
Spørgsmål : 177550
Tips : 31968
Nyheder : 719565
Indlæg : 6408823
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste