Hej! Dim BirthDate As Date, Age As Long Nja...jag måste nog skriva in mer. Jag får inte det lilla att fungera. Jag kan tänka mig att koden bör innehålla dagens datum som subtraheras med födelsedatumet, men kan inte hitta hur jag ska lägga upp det i VB-kod. Public Function Age(DOB As Date) Tillfällig sinnesförvirring... Tack så mycket för hjälpen, ni som svarat på min undran. ne man e inte 20 om man fyller 20 imorgon. ganska logiskt =)Beräkna ålder m.h.a. födelsedatum...
Jag undrar hur man med smidigaste kod i VB kan beräkna ålder från födelsedatumet?
Personen ska kunna skriva in födelsedatumet i ett fält/ruta och sedan ska födelsedatumet beräknas och läggas upp i en särskild fält/ruta.
Hoppas ni kan hjälpa mig!
Tack på förhand!Sv: Beräkna ålder m.h.a. födelsedatum...
Age = DateDiff("m", Date, BirthDate)
/Niklas JanssonSv: Beräkna ålder m.h.a. födelsedatum...
Måste inte 365 vara inberäknat i koden?Sv: Beräkna ålder m.h.a. födelsedatum...
//Johanna PSv: Beräkna ålder m.h.a. födelsedatum...
Dim dAge As Integer
dAge = DateDiff("yyyy", DOB, Now, vbMonday, vbFirstJan1)
If Month(DOB) < Month(Now) Then
dAge = dAge + 1
ElseIf Month(DOB) = Month(Now) And Day(DOB) < Day(Now) Then
dAge = dAge + 1
End If
Age = dAge
End FunctionSv: Beräkna ålder m.h.a. födelsedatum...
Självklart skall man använda "yyyy" och inte "m"...
Frågan är vad man menar med ålder. Är man 20 om man fyller 20 imorrn?
Tycker inte krogarna...
/Niklas JanssonSv: Beräkna ålder m.h.a. födelsedatum...
Sv: Beräkna ålder m.h.a. födelsedatum...
dock returnerar DateDiff 20 hela året, även om man fyllde för en månad sedan.