date naissance!

Le
Laurence Maitre
Bonjour,

J'ai un souci et j'ai besoin de votre aide:

J'ai dans un formulaire un champ "DateNaissance" en type de donnée Date et
un masque de saisie Date abrege 00/00/0000
J'ai également un champ age et j'aimerais que l'age ce calcule directement
d'après la date e naissance
j'ai trouvé plusieurs formules pour le calcul mais ca ne fonctionne pas, je
ne sais pas ou entrer ces formules, et il faudrait que le resultat s'affiche
également dans la table qui contient ces champs.

Merci de me venir en aide car j'en ai mal a la tete a force de chercher.
Laurence
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Daniel Carollo
Le #4838181
Bonjour Laurence!

Abstenez-vous de mettre l'age dans la table, cela vous evitera un mal de
tete, et en plus ce sera faux vu que l'age change tout le temps...


--
Daniel :-)

Computing Technologies International - www.computing-tech.com - We
provide solutions...

"Laurence Maitre" news:c241i7$mmm$
Bonjour,

J'ai un souci et j'ai besoin de votre aide:

J'ai dans un formulaire un champ "DateNaissance" en type de donnée Date et
un masque de saisie Date abrege 00/00/0000
J'ai également un champ age et j'aimerais que l'age ce calcule directement
d'après la date e naissance
j'ai trouvé plusieurs formules pour le calcul mais ca ne fonctionne pas,
je

ne sais pas ou entrer ces formules, et il faudrait que le resultat
s'affiche

également dans la table qui contient ces champs.

Merci de me venir en aide car j'en ai mal a la tete a force de chercher.
Laurence




Le Méruvien
Le #4838171
bonjour,
si tu ne veut pas les mois, la formule la plus simple est :
ageÚte()-[datenaissance]
tu fait donc un champ independantpar exemple [calculage], et a la propriété
source, tu met: Úte()-[datenaissance]
ensuite apres mise a jour de la date de naissance, tu fait une macro ou un
code vba ou tu dis: ageÊlculage
pour le mettre dans la table.



"Laurence Maitre" de news: c241i7$mmm$
Bonjour,

J'ai un souci et j'ai besoin de votre aide:

J'ai dans un formulaire un champ "DateNaissance" en type de donnée Date et
un masque de saisie Date abrege 00/00/0000
J'ai également un champ age et j'aimerais que l'age ce calcule directement
d'après la date e naissance
j'ai trouvé plusieurs formules pour le calcul mais ca ne fonctionne pas,
je

ne sais pas ou entrer ces formules, et il faudrait que le resultat
s'affiche

également dans la table qui contient ces champs.

Merci de me venir en aide car j'en ai mal a la tete a force de chercher.
Laurence




Le Méruvien
Le #4838161
oui c'est vrai, effectivement la date entrée dans la table sera valable
uniquement pour le jour de la saisie, mais ne se mettra pas a jour
automatiquement, donc il faut mieux la laisser dans le formulaire là elle
sera a jour a chaque ouverture du form.


"Daniel Carollo" message de news:
Bonjour Laurence!

Abstenez-vous de mettre l'age dans la table, cela vous evitera un mal de
tete, et en plus ce sera faux vu que l'age change tout le temps...


--
Daniel :-)

Computing Technologies International - www.computing-tech.com - We
provide solutions...

"Laurence Maitre" news:c241i7$mmm$
Bonjour,

J'ai un souci et j'ai besoin de votre aide:

J'ai dans un formulaire un champ "DateNaissance" en type de donnée Date
et


un masque de saisie Date abrege 00/00/0000
J'ai également un champ age et j'aimerais que l'age ce calcule
directement


d'après la date e naissance
j'ai trouvé plusieurs formules pour le calcul mais ca ne fonctionne pas,
je

ne sais pas ou entrer ces formules, et il faudrait que le resultat
s'affiche

également dans la table qui contient ces champs.

Merci de me venir en aide car j'en ai mal a la tete a force de chercher.
Laurence








3stone
Le #4837821
Bonjour Laurence,

"Laurence Maitre"
J'ai dans un formulaire un champ "DateNaissance" en type de donnée Date et
un masque de saisie Date abrege 00/00/0000
J'ai également un champ age et j'aimerais que l'age ce calcule directement
d'après la date e naissance
j'ai trouvé plusieurs formules pour le calcul mais ca ne fonctionne pas, je
ne sais pas ou entrer ces formules, et il faudrait que le resultat s'affiche
également dans la table qui contient ces champs.




Cela fait un moment que tu tourne autour de cela... ;-))

Je t'ai (et d'autres également ;) d'éconseillé de sauver l'age dans la table...
(la valeur invariable est la date de naissance !!! )

Allez, je te prends par la main et on y va...

Crée un nouveau module standard (onglet Module)
et colle y cette fonction :

'---- début ------------------------------------
Function fnAGE(Bdate) As Integer
If IsNull(Bdate) Then
fnAGE = 0
Else
fnAGE = _
DateDiff("yyyy", [Bdate], Now()) + _
Int(Format(Now(), "mmdd") < Format([Bdate], "mmdd"))
End If
End Function
'---- fin ----------------------------------------

Compile le code, menu "Débogage, Compiler..." et sauve ce
module sous un nom *autre* que le nom de la fonction,
"mod_Age", par exemple.

Retourne dans ton formulaire.

Crée une zone de texte que tu nomme "txtAGE"

Dans l'événement "Après Mise à jour" de ton champ "DateDeNaissance"
tu mets ceci :

txtAGE = fnAGE([DateDeNaissance])

Ensuite, tu remets la même chose dans l'événement
"Sur Activation" du formulaire...

Me!txtAGE = fnAGE(Me![DateDeNaissance])

Maintenant, il reste le cas ou tu souhaite avoir l'age dans une requête.
Pour cela, dans la requête, il suffit de créer un champ calculé en
appelant toujours cette même fonction :

Age: fnAGE([DateDeNaissance])

Bien sûr, le champ [DateDeNaissance] doit faire partie de la requête !

Voilà, c'est tout...
Dès maintenant, tu as toujours l'age réel, à l'instant donné,
ET sans le sauver dans une table !!!

Ok, ca marche comme ca ?


--
A+
Pierre (3stone) Access MVP
-----------------------------
http://users.skynet.be/mpfa
-----------------------------

Laurence Maitre
Le #4837161
Merci beaucoup c'est ENFIN très clair!!
Laurence
"3stone" news:e%
Bonjour Laurence,

"Laurence Maitre"
J'ai dans un formulaire un champ "DateNaissance" en type de donnée Date
et


un masque de saisie Date abrege 00/00/0000
J'ai également un champ age et j'aimerais que l'age ce calcule
directement


d'après la date e naissance
j'ai trouvé plusieurs formules pour le calcul mais ca ne fonctionne pas,
je


ne sais pas ou entrer ces formules, et il faudrait que le resultat
s'affiche


également dans la table qui contient ces champs.




Cela fait un moment que tu tourne autour de cela... ;-))

Je t'ai (et d'autres également ;) d'éconseillé de sauver l'age dans la
table...

(la valeur invariable est la date de naissance !!! )

Allez, je te prends par la main et on y va...

Crée un nouveau module standard (onglet Module)
et colle y cette fonction :

'---- début ------------------------------------
Function fnAGE(Bdate) As Integer
If IsNull(Bdate) Then
fnAGE = 0
Else
fnAGE = _
DateDiff("yyyy", [Bdate], Now()) + _
Int(Format(Now(), "mmdd") < Format([Bdate], "mmdd"))
End If
End Function
'---- fin ----------------------------------------

Compile le code, menu "Débogage, Compiler..." et sauve ce
module sous un nom *autre* que le nom de la fonction,
"mod_Age", par exemple.

Retourne dans ton formulaire.

Crée une zone de texte que tu nomme "txtAGE"

Dans l'événement "Après Mise à jour" de ton champ "DateDeNaissance"
tu mets ceci :

txtAGE = fnAGE([DateDeNaissance])

Ensuite, tu remets la même chose dans l'événement
"Sur Activation" du formulaire...

Me!txtAGE = fnAGE(Me![DateDeNaissance])

Maintenant, il reste le cas ou tu souhaite avoir l'age dans une requête.
Pour cela, dans la requête, il suffit de créer un champ calculé en
appelant toujours cette même fonction :

Age: fnAGE([DateDeNaissance])

Bien sûr, le champ [DateDeNaissance] doit faire partie de la requête !

Voilà, c'est tout...
Dès maintenant, tu as toujours l'age réel, à l'instant donné,
ET sans le sauver dans une table !!!

Ok, ca marche comme ca ?


--
A+
Pierre (3stone) Access MVP
-----------------------------
http://users.skynet.be/mpfa
-----------------------------







Publicité
Poster une réponse
Anonyme