Avatar billede hugopedersen Nybegynder
08. september 2003 - 11:05 Der er 8 kommentarer og
1 løsning

DateDiff funktion tæller ikke rigtigt

Jeg har følgende funktion :

Start_Date  = "01-" & fhpMonth2num(StartM) & "-" & StartY
Stop_Date  = "01-" & fhpMonth2num(StopM) & "-" & StopY

If isDate(Start_Date) AND isDate(Stop_Date) then
  intMonths = (DateDiff("m", Start_Date, Stop_Date)) + 1
Else
  intMonths = -1
end if

fhpNumMonths =intMonths

Den skulle returnere antal måneder mellem 2 datoer ( +1 for at få alle med)  Det gør den sådan set også, men hvis den ene dato er i 2003 og den anden i 2004 så går det galt.

Hvad er det der skal ændres ?
Avatar billede keysersoze Ekspert
08. september 2003 - 11:06 #1
hvordan mener du at det går galt ved forskellig årstal?
Avatar billede hugopedersen Nybegynder
08. september 2003 - 11:09 #2
Jeg glemte headeren
fhpNumMonths(StartM, StartY, StopM, StopY)
Hvis jeg f.eks. sender fhpNumMonths(1, 2003, 3, 2004) så forventer jeg at få et resultat på 15, men jeg får kun 3
Avatar billede ocp Nybegynder
08. september 2003 - 11:09 #3
Med mindre den opfatter "01" som måneden og StartM som dagen? Det er ofte et problem i VB.
Avatar billede hugopedersen Nybegynder
08. september 2003 - 11:10 #4
fhpMonth2num(StartM) er en anden funktion der returnerer månedsnummer ud fra månedsnavn ( Januar = 1, Februar = 2 ....................)
Avatar billede hugopedersen Nybegynder
08. september 2003 - 11:14 #5
Jo men så bør den vel bare altid returnere 1 eller .............
Avatar billede ocp Nybegynder
08. september 2003 - 11:16 #6
hugo: Du har ret, men hvor kommer tallet 3 så fra???
Avatar billede ocp Nybegynder
08. september 2003 - 11:17 #7
Det er selvfølgelig 13 måneder, så 1-tallet kunne vel være skjult i visningen?
Avatar billede hugopedersen Nybegynder
08. september 2003 - 11:19 #8
måned 1 til måned 3
Den bruger simpelthen ikke årstallet så vidt jeg kan se.
Avatar billede hugopedersen Nybegynder
08. september 2003 - 11:36 #9
UPS - en lille tastefejl

Funktionen kunne ikke gøre for det :-)
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