Avatar billede shj Nybegynder
21. maj 2000 - 18:27 Der er 17 kommentarer og
1 løsning

function fra dato kl til dato kl "hvor mange timer"

Hej!

jeg skal bruge en function i vb 5.0 der kan udregne antal timer fra en dato/tidspunkt til nydato/tidspunkt.
Jeg har ikke rigtigt kunne finde noget så hvis der er en der ligger inde med en sådan ville jeg blive rigtig glad.
Avatar billede tdaugaard Nybegynder
21. maj 2000 - 18:43 #1
Ved hjælp af DateDiff

lngHours = DateDiff("h", FraDato, TilDato)
Avatar billede tdaugaard Nybegynder
21. maj 2000 - 18:46 #2
"h" kan erstattes med

"n"    = Minutter
"s"    = Sekunder
"m"    = Måneder
"yyyy" = År

Avatar billede shj Nybegynder
21. maj 2000 - 19:54 #3
Tak for det, billige men fortjent 150 point, jeg sad og var igang med at programmere funktionen selv, så der er tid sparet.

Simon
Avatar billede tdaugaard Nybegynder
21. maj 2000 - 20:00 #4
Det var så lidt!
Ja .. det vil tage lidt tid at lave en DateDiff funktion selv :)
Avatar billede shj Nybegynder
21. maj 2000 - 20:08 #5
Hmmmmmm men kan funktionen bruges med tidspunkt, hvis jeg .feks
gør DateDiff("h", now, "22-05-2000 20:00") returnere den 4, hvor den skulle returnere tæt på de 24! nogen forslag!!!!!
Avatar billede tdaugaard Nybegynder
21. maj 2000 - 20:15 #6
Faktisk ikke ...*sorry*
Avatar billede privaten Nybegynder
22. maj 2000 - 09:35 #7
Hvordan ser den kode ud du tester med?
Avatar billede ahl Nybegynder
22. maj 2000 - 13:55 #8
Jeg har prøvet koden, men der skriver ingen ting!

FraDato = "11-01-2000"
TilDato = Date$
lngHours = DateDiff("h", FraDato, TilDato)
Me.Caption = ingHours
Avatar billede privaten Nybegynder
22. maj 2000 - 14:24 #9

Prøv med:

MsgBox DateDiff("h", now, "23-05-2000 20:00")
Avatar billede ahl Nybegynder
22. maj 2000 - 14:36 #10
Det er jo det samme!!
Avatar billede privaten Nybegynder
22. maj 2000 - 15:06 #11
Har du prøvet?
Avatar billede privaten Nybegynder
22. maj 2000 - 15:13 #12

Pointen skulle være at du er sikker på hvordan resultatet behandles fx.

MsgBox "!"+DateDiff("h", now, "23-05-2000 20:00")+"!"

Hvis resultatet bliver !!, ja så får du virkelig ingenting retur, men til tider kan hele eller dele af data forsvinde i diverse konverternger o.lign.

Det er absolut ikke for at være på tværs, snarere for at hjælpe, jeg mener dette spm. er jo allerede lukket og der er ingen point på spil...
Avatar billede tdaugaard Nybegynder
22. maj 2000 - 15:18 #13
<< ahl >>

Prøv at læse din kode igennem eller brug Option Explicit..

lngHours = DateDiff("h", FraDato, TilDato)
Me.Caption = ingHours

lngHours
ingHours

see the difference ?? (l og i ... hmm)
Avatar billede ahl Nybegynder
22. maj 2000 - 20:23 #14
tdaugaard> hmm... flovt...
Avatar billede ahl Nybegynder
22. maj 2000 - 21:01 #15
har fortsat spørgsmålet: http://www.eksperten.dk/spm.asp?id=17497
Avatar billede privaten Nybegynder
23. maj 2000 - 09:04 #16
Det er netop derfor det nogen gange er en god ide at kaste resultatet ud i en msgbox eller lign.
Avatar billede ahl Nybegynder
23. maj 2000 - 11:19 #17
Hvorfor?
Avatar billede privaten Nybegynder
26. maj 2000 - 15:47 #18
Fordi det sikrer dig, at du med det samme ser resultatet af funktions kaldet og at du behøver ikke at bekymre dig om at der var noget der gik galt i en konvertering eller i opdateringen til et felt på en form etc.
En anden metode er at kaste resultatet ud i debug vinduet.

Pointen er, at du i løbet af sekunder med:

MsgBox DateDiff("h", now, "23-05-2000 20:00")

ville have set at metoden fungerer fint, og herefter kan du så begynde at fejlfinde. Min påstand er herefter, at det er hurtigere at finde den 'rigtige' fejl...

Bare min ydmyge mening
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester