Économisez jusqu'à 10 € sur votre première commande en vous abonnant à notre newsletter.

Trucs et Astuces

Chaque semaine, Micro Application vous propose une astuce différente choisie parmi différentes thématiques :

Bureautique, Internet et création de sites, Photo et vidéo, Windows, ...

Une astuce gratuite chaque semaine ?

Envie de découvrir une nouvelle astuce chaque semaine ?





L'astuce : Calculs sur les âges


Le calcul des âges sous Excel peut  paraître simple : suffit-il de soustraire la date de naissance à la date du jour ? La réponse est non, malheureusement ! Vous pouvez tester, le résultat sera faux, Excel ne gère pas les années bissextiles. Si vous prenez l'exemple d'une personne née le 01/01/1987 et souhaitez calculer son âge au 01/01/2005, le résultat devrait être : 18 ans. Si vous utilisez la formule =01/01/2005-01/01/1987, le résultat, après avoir affecté un format correct à la cellule (aa" ans" mm" mois" jj" jours"), sera : 17 ans 12 mois 31 jours !

Pour pallier ce problème, nous allons utiliser la fonction DATEDIF. Cette fonction calcule la différence entre deux dates, en années, mois et jours. Ne la cherchez pas dans l'aide ou dans l'assistant fonctions, elle n'est pas référencée !

La syntaxe est la suivante : =DATEDIF(Date1;Date2;Intervalle)
où :
Date1 est la date à laquelle vous souhaitez calculer l'âge
Date2 est la date de naissance de la personne
Intervalle peut prendre différentes valeurs (bien respecter les guillemets) :

"y" calcule la différence en nombre d'années
"m" calcule la différence en nombre de mois
"d" calcule la différence en nombre de jours
"ym" calcule la différence en nombre de mois restants, après avoir soustrait le nombre d'années
"yd" calcule la différence en nombre de jours restants, après avoir soustrait le nombre d'années
"md"  calcule la différence en nombre de jours restant, après avoir soustrait le nombre d'années et le nombre de mois

Ainsi, si vous souhaitez afficher un âge avec le nombre d'années, de mois et de jours, vous devrez utiliser trois fois la fonction DATEDIF en concaténation, avec les intervalles respectifs : "y", "ym" et "md"

Exemple : Prenons le cas d'une personne née le 26 mars 1987 ; quel âge aura-t-elle le 1er janvier 2005 ? Pour obtenir uniquement le nombre d'années, la formule sera la suivante :

=DATEDIF("26/03/1987";"01/01/2005";"y")
 

Si vous souhaitez afficher l'âge de cette même personne au 1er janvier 2005, en années, mois et jours, la formule sera la suivante (nous avons mis la date de naissance en A1 et la date du jour en A2) :

=DATEDIF(A1;A2;"y")&DATEDIF(A1;A2;"ym")&DATEDIF(A1;A2;"md")


c'est-à-dire 17 ans, 9 mois et 6 jours.

La formule est constituée de trois fois la fonction DATEDIF avec des valeurs différentes pour les intervalles. Le signe & permet de concaténer chaque morceau.

Le résultat est juste même si l'affichage laisse quelque peu à désirer ! Il suffit d'ajouter du texte et des espaces entre chaque partie, à l'aide également de la concaténation :
=DATEDIF(A1;A2;"y")&" ans "&DATEDIF(A1;A2;"ym")&" mois "&DATEDIF(A1;A2;"md")&" jours"

ce qui nous donnera le résultat suivant :

NB : si vous n'êtes pas familiarisé avec la concaténation, vous pouvez utiliser l'assistant de fonction Concaténer :

Le résultat est identique même si l'écriture de la formule est légèrement différent  :
=CONCATENER(DATEDIF(A1;A2;"y");" ans ";DATEDIF(A1;A2;"ym");" mois ";DATEDIF(A1;A2;"md");" jours")
 



Un service offert par

POUR ALLER PLUS LOIN...

Formation Complète - Microsoft® Windows® XP et Internet
Un ouvrage de formation complet, en couleurs, pour Windows® XP et Internet !

Plus d'infos

24,50 €
Acheter le livre
Microsoft® Windows® XP
Des projets à réaliser facilement avec Microsoft® Windows® XP !

Plus d'infos

9,50 €
Acheter le livre
OpenOffice.org 2.3
La suite Bureautique alternative!

Plus d'infos

14,95 €
Acheter en boîte
 

Les autres astuces Office XP - 2003 - 2007


Voir toutes les astuces Micro Application...



Conditions générales de vente et de téléchargement | Confidentialité et Sécurité | Règles d'utilisation
Mon projet Maison