Formule ?

Archa -  
Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Quelle formule utiliser pour calculer le nombre d'années entre deux dates, au jour près, sachant que la première date se situe dans les années 1880 ?
Exemple : 7/02/1887 - la date d'aujourd'hui = ?
Merci de m'aider

Archa

3 réponses

  1. yclik Messages postés 71 Date d'inscription   Statut Membre Dernière intervention   1 611
     
    Bonsoir
    une proposition
    date début en A3 au format texte
    =ANNEE(AUJOURDHUI())-CNUM(DROITE(A3;4))

    =MOIS(AUJOURDHUI())- CNUM(STXT(A3;TROUVE("/";A3)+1;2))

    =JOUR(AUJOURDHUI())- CNUM(GAUCHE(A3;2))


    0
  2. Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 147
     
    Bonjour,

    Pas facile et surtout le décompte ne sera qu'approximatif en fonction de l'année dont la cause est provoqué par les différents calendriers qui ont été utilisés par le passé. Excel n'as pas prévu ce genre de calcul parce que le premier jour informatique 1 correspond au 01/01/1900

    Mais Excel est très bien capable de calculer, l'âge ou la différence entre deux dates avec DATEDIF entre le 01/01/1900 et le 31/12/9999 tu vois qu'il y a de la marge.

    alors l'astuce est d'ajouter 4000 ans aux dates pour tenir compte des années bissextiles qui sont divisibles par 4 ou par 100, mais pas par 400.

    exemple date d'entrée 10/02/1824 et date de sortie 05/06/1905 on ajoute donc 4000 à chaque date ce qui donne 10/02/5824 et 05/06/5905
    ensuite on utilise simplement DATEDIF

    pour avoir le nombre d'année
    =DATEDIF(A1;B1;"y")

    a partir de là il est possible de calculer le nombre d'années, de mois, de jours

    Il est également possible de le faire directement sans toucher aux dates initiales
    =DATEDIF((GAUCHE(A1;NBCAR(A1)-4)&DROITE(A1;4)+4000)*1;DATE(ANNEE(B1)+4000;MOIS(B1);JOUR(B1));"y")&" ans, "&DATEDIF((GAUCHE(A1;NBCAR(A1)-4)&DROITE(A1;4)+4000)*1;DATE(ANNEE(B1)+4000;MOIS(B1);JOUR(B1));"ym")&" mois et "&DATEDIF((GAUCHE(A1;NBCAR(A1)-4)&DROITE(A1;4)+4000)*1;DATE(ANNEE(B1)+4000;MOIS(B1);JOUR(B1));"md")&" jours"

    Si tu veux calculer la différence entre une date et aujourd'hui il suffit de remplacer l'adresse de la cellule contenant la date de sortie dans l'exemple B1 par AUJOURDHUI()
    =DATEDIF((GAUCHE(A1;NBCAR(A1)-4)&DROITE(A1;4)+4000)*1;DATE(ANNEE(AUJOURDHUI())+4000;MOIS(AUJOURDHUI());JOUR(AUJOURDHUI()));"y")&" ans, "&DATEDIF((GAUCHE(A1;NBCAR(A1)-4)&DROITE(A1;4)+4000)*1;DATE(ANNEE(AUJOURDHUI())+4000;MOIS(AUJOURDHUI());JOUR(AUJOURDHUI()));"ym")&" mois et "&DATEDIF((GAUCHE(A1;NBCAR(A1)-4)&DROITE(A1;4)+4000)*1;DATE(ANNEE(AUJOURDHUI())+4000;MOIS(AUJOURDHUI());JOUR(AUJOURDHUI()));"md")&" jours"

    0