Problème pour calculer la différence entre 2 dates inférieure à 1900

Bonjour,

Je veux calculer la différence entre 2 dates et avoir le résultat en années, mois, jours.

Ma formule

=DATEDIF(C3;C5;"y")&" ans "&DATEDIF(C3;C5;"ym")&" mois "&DATEDIF(C3;C5;"md")&" jours"

marche si j'ai des dates aprés le 01/01/1900 mais pas pour des dates inférieures (1800, 1700, ...). Pouvez-vous me dire pourquoi ?

Merci pour vos réponses.

Bonjour et bienvenue,

l'origine des dates dans excel est le 1/1/1900 = jour 1

si tes dates sont supérieures à 1582 (année du passage au calendrier grégorien), tu peux alors ajouter 400 à chacune des dates à comparer

Si je rajoute 400 à une date inférieure à 1900 il me faut le faire manuellement sinon ça ne marche pas.

Par exemple si j'ai 01/01/1789 qui correspond à A1 et que je crée une case A1+(400*365) pour avoir une date supérieure à 1900 cela ne fonctionne pas

Bon,jour,

Par exemple, cette formule permet d'ajouter 400 années à une date comprise entre 1582 et 1900, pour devenir donc une date gérable par Excel

DATEVAL(GAUCHE(A1;6)&CNUM(DROITE(A1;4))+400)

Si je rajoute 400 à une date inférieure à 1900 il me faut le faire manuellement sinon ça ne marche pas.

Par exemple si j'ai 01/01/1789 qui correspond à A1 et que je crée une case A1+(400*365) pour avoir une date supérieure à 1900 cela ne fonctionne pas

N'hésite pas à mettre un fichier.

Comme dit thev que je salue, il faut décomposer ta valeur qui du reste est probablement au format texte.

Je n'arrive pas à trouver une formule qui marche quelle que soit la date.

Merci de votre aide

51classeur1.xlsx (10.18 Ko)

Bonsoir,

ci-dessous une solution

191classeur2.xlsx (11.55 Ko)

Bonsoir toutes et tous

merci et ^^^Thev

dommage moi, je tombe à chaque fois à côté, sniff sûrement l'histoire de date avant 1900

mais, j'y étais presque sniff en modifiant 2 fonctions mais, cela n'est pas bon pour cause: jours restants ou pas non comptabilisés

Edit : note source https://www.excelformation.fr/compter-age-avant-1900-dates-excel.html

crdlt,

André

Bonjour,

Merci à tous d'avoir essayé de m'aider mais j'ai enfin trouvé une solution:

J'ai créé

- une cellule C6 pour calculer le résultat avec 2 dates aprés 1900 avec la formule

SIERREUR(DATEDIF(C3;C5;"y")&" ans "&DATEDIF(C3;C5;"ym")&" mois "&DATEDIF(C3;C5;"md")&" jours"; " ")

- une cellule C7 pour calculer le résultat avec 2 dates avant 1900 avec la formule

SIERREUR(DATEDIF(DATEVAL(GAUCHE(C3;6)&CNUM(DROITE(C3;4))+400);DATEVAL(GAUCHE(C5;6)&CNUM(DROITE(C5;4))+400);"y")&" ans "&DATEDIF(DATEVAL(GAUCHE(C3;6)&CNUM(DROITE(C3;4))+400);DATEVAL(GAUCHE(C5;6)&CNUM(DROITE(C5;4))+400);"ym")&" mois "&DATEDIF(DATEVAL(GAUCHE(C3;6)&CNUM(DROITE(C3;4))+400);DATEVAL(GAUCHE(C5;6)&CNUM(DROITE(C5;4))+400);"md")&" jours"; " ")

- une cellule C8 pour calculer le résultat avec 1date avant 1900 et 1 date apres 1900 avec la formule

SIERREUR(DATEDIF(DATEVAL(GAUCHE(C3;6)&CNUM(DROITE(C3;4))+100);C5+36525;"y")&" ans "&DATEDIF(DATEVAL(GAUCHE(C3;6)&CNUM(DROITE(C3;4))+100);C5+36525;"ym")&" mois "&DATEDIF(DATEVAL(GAUCHE(C3;6)&CNUM(DROITE(C3;4))+100);C5+36525;"md")&" jours"; " ")

et j'ai mon résultat dans une autre cellule C9 avec la formule

C6&C7&C8

Encore merci à vous , vos suggestions m'ont beaucoup aidées

Rechercher des sujets similaires à "probleme calculer difference entre dates inferieure 1900"