On peut calculer un âge avec les champs, mais c'est très complexe. Un document sur le sujet est à votre disposition.
Vu la complexité de ce type de calculs avec les champs Word, le mieux est d'utiliser une macro.
Cette première macro calcule l'âge en années :
Sub age()
Dim madate, monAge
debut:
madate = InputBox("Saisissez votre naissance au format jj/mm/aaaa", _
"Date de naissance", Format("dd/mm/yyyy"))
If madate = "" Then Exit Sub
If IsDate(madate) = False Then
MsgBox "Ce n'est pas une date valide, recommencez."
GoTo debut:
End If
monAge = DateDiff("yyyy", madate, Now)
If Date < DateSerial(Year(Now), Month(madate), Day(madate)) Then monAge = monAge - 1
MsgBox "Vous avez " & monAge & " ans"
End Sub
Et voici une seconde macro qui calcule l'âge en années et en mois :
Sub age2()
Dim monAge, madate
debut:
madate = InputBox("Saisissez votre naissance au format jj/mm/aaaa", _
"Date de naissance", Format("dd/mm/yyyy"))
If madate = "" Then Exit Sub
If IsDate(madate) = False Then
MsgBox "Ce n'est pas une date valide, recommencez."
GoTo debut:
End If
monAge = DateDiff("yyyy", madate, Now)
If Date < DateSerial(Year(Now), Month(madate), Day(madate)) Then
monAge = monAge - 1
nbmois = DateDiff("m", DateSerial(Year(Now), Month(12), Day(31)), DateSerial(Year(Now), Month(madate), Day(madate)))
Else
nbmois = DateDiff("m", DateSerial(Year(Now), Month(madate), Day(madate)), Now)
End If
MsgBox "Vous avez " & monAge & "ans " & nbmois & " mois"
End Sub