OVH Cloud OVH Cloud

calcul de la majorité

6 réponses
Avatar
ludo
bonjour,
j'ai une table avec le champ date de naissance ; y'a t'il une solution
simple pour qu'access m'affiche la date de la majorité dans une requête.
merci d'avance.
ludovic

6 réponses

Avatar
Raymond [mvp]
Bonjour.

Qu'appelles-tu majorité ? si c'est 50% des personnes tu peux avoir avoir
plusieurs dates, si c'est le plus grand nombre on peut passer par une
requête premières valeurs. dans tous les cas il te faut une requête de
regroupement sur l'année de naissance( je pense année) avec une opération
Compte sur un champ et un tri desc sur ce même champ et un Top à 50 %
éventuel.

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"ludo" a écrit dans le message de
news:cbrr2p$ttq$
bonjour,
j'ai une table avec le champ date de naissance ; y'a t'il une solution
simple pour qu'access m'affiche la date de la majorité dans une requête.
merci d'avance.
ludovic



Avatar
ludo
bonjour raymond,
j'entends par majorité un âge supérieur ou égal à 18 ans.
merci d'avance si tu as une petite solution
ludovic.

"Raymond [mvp]" a écrit dans le message de
news: #
Bonjour.

Qu'appelles-tu majorité ? si c'est 50% des personnes tu peux avoir avoir
plusieurs dates, si c'est le plus grand nombre on peut passer par une
requête premières valeurs. dans tous les cas il te faut une requête de
regroupement sur l'année de naissance( je pense année) avec une opération
Compte sur un champ et un tri desc sur ce même champ et un Top à 50 %
éventuel.

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"ludo" a écrit dans le message de
news:cbrr2p$ttq$
bonjour,
j'ai une table avec le champ date de naissance ; y'a t'il une solution
simple pour qu'access m'affiche la date de la majorité dans une requête.
merci d'avance.
ludovic







Avatar
Jessy Sempere [MVP]
Bonjour

Tu peux utiliser la fonction qui suit, tu la mets dans un module standard de base
de donnée, ensuite tu t'en sert comme critère dans ta requête, genre :

Select * From TaTable Where Age([ChampDateNaissance])>17;

***********************************************
Function Age(dtBirthDay As Date) As Integer
Age = DateDiff("yyyy", dtBirthDay, Date)
Select Case Month(dtBirthDay)
Case Is > Month(Date)
Age = Age - 1
Case Month(Date)
If Day(dtBirthDay) > Day(Date) Then Age = Age - 1
End Select
End Function
***********************************************
--
@+
Jessy Sempere - Access MVP

------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://users.skynet.be/mpfa/
------------------------------------
"ludo" a écrit dans le message news:
cbru2s$u81$
bonjour raymond,
j'entends par majorité un âge supérieur ou égal à 18 ans.
merci d'avance si tu as une petite solution
ludovic.

"Raymond [mvp]" a écrit dans le message de
news: #
Bonjour.

Qu'appelles-tu majorité ? si c'est 50% des personnes tu peux avoir avoir
plusieurs dates, si c'est le plus grand nombre on peut passer par une
requête premières valeurs. dans tous les cas il te faut une requête de
regroupement sur l'année de naissance( je pense année) avec une opération
Compte sur un champ et un tri desc sur ce même champ et un Top à 50 %
éventuel.

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"ludo" a écrit dans le message de
news:cbrr2p$ttq$
bonjour,
j'ai une table avec le champ date de naissance ; y'a t'il une solution
simple pour qu'access m'affiche la date de la majorité dans une requête.
merci d'avance.
ludovic










Avatar
Raymond [mvp]
Si tu désires le résultat au jour exact il faut passer par une fonction vba
qui te renverra la bonne valeur (fonctions age qu'on trouve sur tous les
sites), si tu désires au mois seulement une fonction datediff suffit
directement dans la requête.
je vais en profiter pour faire une fonction que je mettrais sur mon site.

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"ludo" a écrit dans le message de
news:cbru2s$u81$
bonjour raymond,
j'entends par majorité un âge supérieur ou égal à 18 ans.
merci d'avance si tu as une petite solution
ludovic.


Avatar
3stone
Salut,

"ludo"
j'ai une table avec le champ date de naissance ; y'a t'il une solution
simple pour qu'access m'affiche la date de la majorité dans une requête.



Donc, tu ajoute 18 années à la date de naissance ;-)

DateMajorite: DateAdd("aaaa";18;[DateNaissance])



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

Avatar
Raymond [mvp]
tu trouveras la fonction sur la page:
http://access.vba.free.fr/calculs.htm#majorite_legale

appel de la fonction: MajoritéLégale(Madate, Date(), 18)
pour une requête , 18 étant optionel.
pour vba : MajoritéLégale(Me.Madate, Date)
valeur retournée : True si majorité atteinte, False si minorité.
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"ludo" a écrit dans le message de
news:cbru2s$u81$
bonjour raymond,
j'entends par majorité un âge supérieur ou égal à 18 ans.
merci d'avance si tu as une petite solution
ludovic.