J'ai créé une fonction VBA qui remplace et corrige la fonction non documentée et boguée DATEDIF.
Cette fonction renvoie le nombre exact d'années, de mois et de jours entre deux dates, en tenant compte des années bissexitiles.
Elle se nomme ECARTDATE et demande deux arguments :
1/ la date la plus éloignée
2/ la date la plus proche.

Par exemple :
si A1 contient 14/03/2003 et si B1 contient 27/10/2005,
la formule =ECARTDATE(A1;B1) renvoie 2a 7m 13j.

Dans le cas où la date en A1 serait postérieure à celle contenue en B1 on obtiendrait le message d'erreur #CHRONOLOGIE!.

Téléchargez le classeur contenant cette fonction.

Patrick Bouzin