Bonjour,
Désolé Tom, je me permet d'intervenir car la solution proposée ne peut être valable que si le jour et le mois de la date du jour sont supérieurs au jour et au mois de naissance sinon on se trompe d'un an.
Pour résoudre cela, il faut, soit procéder à un certain nombre de tests longs et fastidieux, soit utiliser la fonction magique cachée au fond d'Excel et non répertoriée pour une raison inconnue dans l'assistant Formule. Il s'agit de la fonction DATEDIF.
Voici un petit mémo qui en explique le fonctionnement :
Fonction cachée d'Excel
La fonction
DATEDIF permet de calculer la différence entre deux dates et de retourner l'écart
en années, mois ou jours.
Principe de la fonction DATEDIF
Prenons
l'exemple de l'écart en jours entre la date du 28/07/2009 et celle du
05/08/2009.
Entre ces 2
dates, il n'y a que 9 jours d'écart et pas un mois complet. Mais il y a eu un
basculement d'un mois calendaire. Donc, si nous utilisons la formule
suivante, le résultat sera 1, ce qui est complètement
faux.
Comme l'exemple l'a démontré, une
différence entre 2 dates n'est pas un calcul facile, mais un calcul très
compliqué. Et tout d'abord quel type de différence voulons-nous calculer ? Une
différence sur les mois, sur les jours, sur les années ou à partir d'une année
pleine ?
Pour réaliser ces
calculs, Excel possède une fonction incroyable pour
réaliser les différences entre les dates mais cette fonction est cachée
Pour vous en rendre
compte, il vous suffit d'afficher l'aide en ligne sur cette fonction et vous
verrez que rien (absolument rien) ne s'affiche à propos de la fonction DATEDIF
; et pourtant elle fonctionne parfaitement.
La
fonction DATEDIF
Il s'agit
de la fonctionDATEDIF. Cette fonction a besoin de 3 paramètres pour fonctionner
·
une date
·
une seconde date (nécessairementsupérieureà la première date)
·
un paramètre pour
retourner l'écart.
=DATEDIF(date1;date2;paramètre)
Nous ne nous étendrons pas sur les 2
premiers paramètres de la fonction qui se comprennent d'eux-mêmes Par contre, le troisième paramètre est de loin
le plus important car c'est lui qui va déterminer le type de calcul qui sera
réalisé.
A noter qu'il doit toujours être entouré de guillemet
1.
“D” – nombre de jours complets
dans la période
2.
“M” – nombre des mois complets
dans la période
3.
“Y” – nombre des années
complètes dans la période
4.
“MD” – nombre de jours
complets dans la période, les années et les mois sont ignorés
5.
“YM” – nombre de mois complets
dans la période, les années et les jours sont ignorés
6.
“YD” – nombre des jours
complets dans la période, les années dans les dates sont ignorées
Certaines conditions doivent être remplies:
La date de début doit être
antérieure à la date de fin – en cas de contraire, la fonction ne
renvoie pas une valeur négative mais une erreur (#NOMBRE!).
Les deux dates doivent être dans le format
approprié – c’est à dire “date” ou “nombre” (pour les geeks). Si
vous utilisez comme paramètres des cellules formatées comme date, vous n’avez
rien à craindre. Si vous voulez comparer des dates “à la main”, il est
préférable d’utiliser d’abord la fonction DATE. Ce qui donne une formule de ce type:=DATEDIF(DATE(2010;1;1);DATE(2015;4;31);"Y")
Cette fonction fonctionne pour les dates se
situant après 1/1/1900. (selon paramètres Excel)
Comme il s'agit d'une différence, cette contrainte
peut être facilement contournée en ajoutant 2000 aux deux dates.
En annexe le fichier envoyé par Tom avec les formules adaptées en colonne >G> ; H ; I
http://www.cjoint.com/c/GAcjNEG4daN
Cliques sur le lien et suis les instructions pour récupérer le fichier
J'ai privilégié l'encodage d'une date de calcul plutôt que la fonction automatique AUJOURDHUI() car souvent dans les applications, il est nécessaire de spécifier une date différente que la date du jour.
Bonne année à tous les deux
Chris