Es gibt eine Funktion, die Sie Ihrem Code hinzufügen können, die dies einfach für Sie erledigt. Wechseln Sie zu Visual Basic, fügen Sie ein neues Modul ein, und fügen Sie dann den folgenden Code ein:
Function Age(varDOB As Variant, Optional varAsOf As Variant) As Variant
'Purpose: Return the Age in years.
'Arguments: varDOB = Date Of Birth
' varAsOf = the date to calculate the age at, or today if missing.
'Return: Whole number of years.
Dim dtDOB As Date
Dim dtAsOf As Date
Dim dtBDay As Date 'Birthday in the year of calculation.
Age = Null 'Initialize to Null
'Validate parameters
If IsDate(varDOB) Then
dtDOB = varDOB
If Not IsDate(varAsOf) Then 'Date to calculate age from.
dtAsOf = Date
Else
dtAsOf = varAsOf
End If
If dtAsOf >= dtDOB Then 'Calculate only if it's after person was born.
dtBDay = DateSerial(Year(dtAsOf), Month(dtDOB), Day(dtDOB))
Age = DateDiff("yyyy", dtDOB, dtAsOf) + (dtBDay > dtAsOf)
End If
End If
End Function
Sie können dann einfach ein Steuerelement erstellen und die Steuerquelle auf einstellen, =Age([name of the filed with the birth date])
und die Funktion berechnet das Alter genau.
Code zur Verfügung gestellt von Allen Browne. http://allenbrowne.com/func-08.html