Avatar billede juks Novice
20. december 2005 - 21:38 Der er 5 kommentarer og
2 løsninger

alder udregnet i forspørgelse

Hej Drenge.
Kan i hjælpe mig .

har en fød´dato i et felt i en Query (fx 130569)
hvordan får jeg regnet alderen ud, fra dette felt.
Avatar billede stigdk Nybegynder
20. december 2005 - 21:51 #1
hvordan ser en sådan input i feltet ud?
Avatar billede sjap Praktikant
20. december 2005 - 22:10 #2
Jeg plejer at bruge følgende funktion:

Function AgeInYears(dBorn As Date, dDied As Date) As Integer

If DateSerial(Year(dDied), Month(dBorn), Day(dBorn)) > dDied Then
    AgeInYears = DateDiff("yyyy", dBorn, dDied) - 1
Else
    AgeInYears = DateDiff("yyyy", dBorn, dDied)
End If

End Function

Som du blot placerer i et modul, og så kan du kalde det fra din forespørgsel med:

AgeInYears([Født],Now())

Feltet [Født] skal selvfølgelig være i datoformat.
Avatar billede sjap Praktikant
20. december 2005 - 22:18 #3
Hvis du gerne vil undgå kode, kan den her "lille" funktion også gøre det:

IIf(Month(Now())<Month([Født]) Or (Month(Now())=Month([Født]) And Day(Now())<Day([Født]));Year(Now())-Year([Født])-1;Year(Now())-Year([Født]))
Avatar billede juks Novice
21. december 2005 - 09:38 #4
hey sjap ... problemet er at født feltet er et tekst felt og indeholder "kun" ddmmyy (130569)
Avatar billede juks Novice
21. december 2005 - 09:57 #5
Function AgeInYears(born_date As String, dDied As Date) As String


If Not born_date = "1/1-1900" Then

dagen = (Mid(born_date, 1, 2))

maaeneden = (Mid(born_date, 3, 2))
aar = (Mid(born_date, 5, 2))
spilleraar = dagen & "/" & maaeneden & "-" & "19" & aar
thisaar = (Year(Date))
datoen = DateDiff("yyyy", spilleraar, "1/1/" & thisaar)


If datoen > 12 And datoen < 17 Then
AgeInYears = "j"
Else
AgeInYears = "s"
End If
End If

End Function
Avatar billede juks Novice
21. december 2005 - 09:57 #6
vi kan dele de point ..:-)
Avatar billede sjap Praktikant
21. december 2005 - 17:48 #7
Du skal bare være opmærksom på at funktionen

datoen = DateDiff("yyyy", spilleraar, "1/1/" & thisaar)

kan give en fejl på 1 år. Prøv at se hvordan den bliver brugt i mit forslag.
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
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

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