i

Calcul de l'âge


Sub AGE()

' Age Macro

' Macro enregistrée le 30/04/2006

' Sélectionne une date qu'on vient de saisir dans le texte

' (10 caractères) place le contenu dans Datenaiss

Selection.MoveLeft Unit:=wdCharacter, Count:, Extend:=wdExtend

Dim DateNaiss As Date

Dim AgePat As Variant

DateNaiss = Selection

AgePat = DateDiff("yy", DateNaiss, Now)

MsgBox (AgePat)


' Suit ci-dessous la suite du projet qui inscrira l'âge

' Efface la date de naissance dans le texte et la remplace

' par l'âge calculé

' Delete.Selection

' ReplaceSelection = True

' Selection.TypeText (AgePat)

End Sub


Essaie avec

Age = DateDiff("yyyy", DateNaissance, Date) + (Format(Date, "mmdd") <

Format(DateNaissance, "mmdd"))




Sub calc_age(oEvent) 'calcul de l'âge en partant d'un champ du document


Dim oForm 'Reference au formulaire contenant le champ date de naissance

Dim lColNaissance 'Colonne contenant la date de naissance

Dim lColAge 'Colonne qui contiendra l'âge

Dim dNaissance as date 'Valeur contenue dans le champ date de naissance


REM obtient l'objet parent (formulaire)

oForm = oEvent.Source.getModel().getParent()


REM trouve les colonnes qui contiennent la date de naissance et l'âge

lColNaissance = oForm.findColumn("DateNais")

lColAge = oForm.findColumn("Age")


REM lit la date dans la colonne date de naissance

dNaissance = oForm.getString(lColNaissance)


REM affiche le résultat du calcul

msgbox "Age : "+int(datediff("m",datevalue(dNaissance),now)/12)

End Sub