Age par rapport à la date de naissance

jppierre52

XLDnaute Nouveau
Bonjour
Je cherche la formule me permettant d'afficher dans une cellule l’âge par rapport à la date de naissance présente dans une autre cellule.
Exemple A1 = date de naissance soit 27/01/1953
Age ? dans la cellule B1
merci
 

Efgé

XLDnaute Barbatruc
Re : Age par rapport à la date de naissance

Bonjour à Tous

Roger2327 a donné une réponse ici:
=SI(AUJOURDHUI()<$A$1;"";ANNEE(AUJOURDHUI())-ANNEE($A$1)-((100*MOIS(AUJOURDHUI())+JOUR(AUJOURDHUI()))<(100*MOIS($A$1)+JOUR($A$1)))&" a "&MOIS(AUJOURDHUI())-MOIS($A$1)+12*((100*MOIS(AUJOURDHUI())+JOUR(AUJOURDHUI()))<(100*MOIS($A$1)+JOUR($A$1))-(JOUR(AUJOURDHUI())<JOUR($A$1))*(1-DATE(ANNEE(AUJOURDHUI());MOIS(AUJOURDHUI())-1;1)+DATE(ANNEE(AUJOURDHUI());MOIS(AUJOURDHUI());1)))&" m "&JOUR(AUJOURDHUI())-JOUR($A$1)-(JOUR(AUJOURDHUI())<JOUR($A$1))*(DATE(ANNEE(AUJOURDHUI());MOIS(AUJOURDHUI())-1;1)-DATE(ANNEE(AUJOURDHUI());MOIS(AUJOURDHUI());1))+1&" j")

C'est clair, c'est simple, ça se retient aisément :D ; mais surtout c'est complet.

Cordialement
 

Modeste geedee

XLDnaute Barbatruc
Re : Age par rapport à la date de naissance

Bonsour®
Bonjour à Tous

Roger2327 a donné une réponse ici:


C'est clair, c'est simple, ça se retient aisément :D ; mais surtout c'est complet.

Cordialement

:rolleyes:
je m'étais pourtant promis que je ne mettrai plus les doigts dans ce piège *...;)
Capture.JPG

*seul un âge en jours utilise une unité constante.
 

Pièces jointes

  • Capture.JPG
    Capture.JPG
    23.1 KB · Affichages: 43
  • Capture.JPG
    Capture.JPG
    23.1 KB · Affichages: 47

ROGER2327

XLDnaute Barbatruc
Re : Age par rapport à la date de naissance

Bonjour à tous.


Avec, en A1, une date pure (j'entends par là une date sans heure, minute, seconde) :​
Code:
=SI(A1*MAINTENANT()*(A1<=AUJOURDHUI());
                 ENT((12*(ANNEE(AUJOURDHUI()+1)-ANNEE(A1))+MOIS(AUJOURDHUI()+1)-MOIS(A1)
    -(MOIS.DECALER(A1;12*(ANNEE(AUJOURDHUI()+1)-ANNEE(A1))+MOIS(AUJOURDHUI()+1)-MOIS(A1))
                             >=(AUJOURDHUI()+1)))/12)&"a "&
       DROITE(" "&MOD(12*(ANNEE(AUJOURDHUI()+1)-ANNEE(A1))+MOIS(AUJOURDHUI()+1)-MOIS(A1)
    -(MOIS.DECALER(A1;12*(ANNEE(AUJOURDHUI()+1)-ANNEE(A1))+MOIS(AUJOURDHUI()+1)-MOIS(A1))
                             >=(AUJOURDHUI()+1));12);2)&"m "&
                     DROITE(" "&AUJOURDHUI()
-MOIS.DECALER(ENT(A1);12*(ANNEE(AUJOURDHUI()+1)-ANNEE(A1))+MOIS(AUJOURDHUI()+1)-MOIS(A1)
    -(MOIS.DECALER(A1;12*(ANNEE(AUJOURDHUI()+1)-ANNEE(A1))+MOIS(AUJOURDHUI()+1)-MOIS(A1))
                             >=(AUJOURDHUI()+1)));2)&"j";"")
Sinon :​
Code:
=SI(A1*MAINTENANT()*(A1<=MAINTENANT());
                 ENT((12*(ANNEE(ENT(MAINTENANT())+((ARRONDI(MAINTENANT()-ENT(MAINTENANT())-A1+ENT(A1);6))>=0))-ANNEE(A1))
                          +MOIS(ENT(MAINTENANT())+((ARRONDI(MAINTENANT()-ENT(MAINTENANT())-A1+ENT(A1);6))>=0))-MOIS(A1)
    -(MOIS.DECALER(A1;12*(ANNEE(ENT(MAINTENANT())+((ARRONDI(MAINTENANT()-ENT(MAINTENANT())-A1+ENT(A1);6))>=0))-ANNEE(A1))
                          +MOIS(ENT(MAINTENANT())+((ARRONDI(MAINTENANT()-ENT(MAINTENANT())-A1+ENT(A1);6))>=0))-MOIS(A1))
                             >=(ENT(MAINTENANT())+((ARRONDI(MAINTENANT()-ENT(MAINTENANT())-A1+ENT(A1);6))>=0))))/12)&"a "&
       DROITE(" "&MOD(12*(ANNEE(ENT(MAINTENANT())+((ARRONDI(MAINTENANT()-ENT(MAINTENANT())-A1+ENT(A1);6))>=0))-ANNEE(A1))
                          +MOIS(ENT(MAINTENANT())+((ARRONDI(MAINTENANT()-ENT(MAINTENANT())-A1+ENT(A1);6))>=0))-MOIS(A1)
    -(MOIS.DECALER(A1;12*(ANNEE(ENT(MAINTENANT())+((ARRONDI(MAINTENANT()-ENT(MAINTENANT())-A1+ENT(A1);6))>=0))-ANNEE(A1))
                          +MOIS(ENT(MAINTENANT())+((ARRONDI(MAINTENANT()-ENT(MAINTENANT())-A1+ENT(A1);6))>=0))-MOIS(A1))
                             >=(ENT(MAINTENANT())+((ARRONDI(MAINTENANT()-ENT(MAINTENANT())-A1+ENT(A1);6))>=0)));12);2)&"m "&
                     DROITE(" "&ENT(MAINTENANT())+((ARRONDI(MAINTENANT()-ENT(MAINTENANT())-A1+ENT(A1);6))>=0)
-MOIS.DECALER(ENT(A1);12*(ANNEE(ENT(MAINTENANT())+((ARRONDI(MAINTENANT()-ENT(MAINTENANT())-A1+ENT(A1);6))>=0))-ANNEE(A1))
                          +MOIS(ENT(MAINTENANT())+((ARRONDI(MAINTENANT()-ENT(MAINTENANT())-A1+ENT(A1);6))>=0))-MOIS(A1)
    -(MOIS.DECALER(A1;12*(ANNEE(ENT(MAINTENANT())+((ARRONDI(MAINTENANT()-ENT(MAINTENANT())-A1+ENT(A1);6))>=0))-ANNEE(A1))
                          +MOIS(ENT(MAINTENANT())+((ARRONDI(MAINTENANT()-ENT(MAINTENANT())-A1+ENT(A1);6))>=0))-MOIS(A1))
                             >=(ENT(MAINTENANT())+((ARRONDI(MAINTENANT()-ENT(MAINTENANT())-A1+ENT(A1);6))>=0))))-1;2)&"j "&
TEXTE(MOD(MAINTENANT()-A1;1);"hh:mm:ss");"")


Bonne soirée.


ℝOGER2327
#7701


Jeudi 5 Sable 142 (Sainte Savate, avocate - fête Suprême Quarte)
15 Frimaire An CCXXIII, 6,4941h - chevreuil
2014-W49-5T15:35:09Z
 

pierrejean

XLDnaute Barbatruc
Re : Age par rapport à la date de naissance

Re

@ Modeste

Effectivement le fichier que j'ai posté ne date pas de mes débuts mais a été repris et modernisé en 2012
Le raisonnement et les 1ers essais remontent bien eux à cette période ( il s'agit bêtement d'une soustraction avec report ce qui s'apprend je crois peu après la maternelle)
 

Discussions similaires

Statistiques des forums

Discussions
312 108
Messages
2 085 369
Membres
102 875
dernier inscrit
Jimbo2374