Avatar billede phineas_phreak Nybegynder
11. juni 2004 - 00:46 Der er 13 kommentarer og
2 løsninger

DateDiff igen igen

skal udregne en alder i år udfra 2 datoer, men er ved at gå død.

følgende
Alder = DateDiff("yyyy","06-11-1953","10-06-2004")

giver ifølge funktionen 51 men i virkeligheden er alderen kun 50.

Er det den måde funktionen virker eller hvad har jeg gjort galt ???

Jeg HAR husket at indsætte Session.LCID = 1030 i toppen.

trækker den kun årstallene fra hinanden eller hvordan virker det ?

På forhånd tak for hjælpen
Avatar billede thesurfer Nybegynder
11. juni 2004 - 00:48 #1
Nej, alderen er 51 år, da årene er inklusiv.
Avatar billede thesurfer Nybegynder
11. juni 2004 - 00:48 #2
Ellers må du bare bruge:

Alder = DateDiff("yyyy","06-11-1953","10-06-2004") - 1
Avatar billede thesurfer Nybegynder
11. juni 2004 - 00:49 #3
2004 - 1953 = 51 (og ikke 50.. for skulle det enten være 1954 eller 2003)
Avatar billede phineas_phreak Nybegynder
11. juni 2004 - 00:52 #4
problemet er at hvis jeg bruger min egen fødselsdato som er 06-02-1983 så passer pengene med min alder på 21

hvorimod min fars dato ikke passer da han "kun" er 50
Avatar billede phineas_phreak Nybegynder
11. juni 2004 - 00:52 #5
så derfor nytter det jo ikke at trække 1 fra
Avatar billede ttopholm Nybegynder
11. juni 2004 - 00:52 #6
Brug dag istedet for og mod det...

Alder = DateDiff("d","06-11-1953","10-06-2004")
Alder = Alder mod 365

så burde du have det
Avatar billede phineas_phreak Nybegynder
11. juni 2004 - 00:54 #7
kan bare ikke forstå at funktionen er SÅ dårlig opbygget. Tager jeg nu og siger

test = DateDiff("d","06-11-1953","10-06-2004")
og så
alder = test / 365.25

så arbejder man ligesom Access og Excel gør, og så passer pengene.

Derfor undrer det mig bare
Avatar billede thesurfer Nybegynder
11. juni 2004 - 00:54 #8
hmm.. gad vis om det er fordi 06-11-1953 ligger i det andet halvår, og 06-02-1983 ligger i det første..

Den trækker vel også måneder fra hinanden..?
Avatar billede phineas_phreak Nybegynder
11. juni 2004 - 00:55 #9
er det ikk DIV du vil bruge ? MOD giver kun resten
Avatar billede ttopholm Nybegynder
11. juni 2004 - 00:56 #10
vrøvl... mod giver bare resten.... du skal bruge

alder = int(alder / 365)

det giver dig et heltal :-)
Avatar billede ttopholm Nybegynder
11. juni 2004 - 00:56 #11
skriver lidt forbi hinanden.. det sker :-)
Avatar billede phineas_phreak Nybegynder
11. juni 2004 - 00:59 #12
men ttopholm så skal man vel dele med 365.25 for at tage højde for skudår ikke sandt ? ved ik om det har den store betydning
Avatar billede ttopholm Nybegynder
11. juni 2004 - 01:00 #13
jo.. men den store betydning er der vil  ikke
Avatar billede phineas_phreak Nybegynder
11. juni 2004 - 01:05 #14
jeg accepterer din løsning men tager lidt af pointene selv
Avatar billede phineas_phreak Nybegynder
11. juni 2004 - 01:05 #15
svar :-)
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

Seneste spørgsmål Seneste aktivitet
I dag 10:21 Ny printer, men hvilken Af mort1 i Printere
I går 19:41 USB på Linux Af Uvanga i Linux
12/0818:26 Hvilken type mus Af mort1 i PC
11/0813:21 ms Forms Af leahcim i Andet software
10/0821:30 Blokeret på Snapchat? Af LineP i Chat & Messaging