Pourquoi excel affiche t'il 108

Résolu/Fermé
borislepujolais - 2 nov. 2008 à 17:03
 borislepujolais - 3 nov. 2008 à 15:27
Bonjour,

Cette formule de calcul de l'âge fonctionne très bien. Merci beaucoup.
Mais pourquoi, lorsqu'il n'y a pas de date de saisie excel affiche t'il par exemple
108ans 10mois 3jours
Sans saisie dans la cellule il semble, par défaut, faire appel à l'année 1900.
Est-il possible de contrarier cet affichage ?
borislepujolais
A voir également:

4 réponses

Utilisateur anonyme
2 nov. 2008 à 18:03
Bonjour,
Vous l’avez dit l’origine standard du calendrier excel est fixée au 01/01/1900 à 0h .
C’est donc la valeur par défaut que choisit excel si aucune autre valeur à soustraire ne lui est proposée dans votre tableau.
Pour y remédier vous pouvez ajouter une condition à votre formule avec une fonction SI.
En supposant que votre calcul actuel est =B1-A1 vous pouvez écrire =SI(ESTNUM(A1);B1-A1;"")
Ce qui correspond à : s’il n’y a pas un nombre dans la cellule A1 je n’écris rien(les 2 guillemets doubles).
1
borislepujolais
3 nov. 2008 à 12:11
Bonjour,

Merci pour votre réponse.

J'ai intégré une formule trouvée dans un forum qui fonctionne très bien. Elle me donne l'âge en - années - mois - jours.

La voici :

=(SI(C1+1-H3;TEXTE(DATEDIF(H3;C1+1;"y");"[>1]0"" ans "";[>]""1 an "";")&TEXTE(DATEDIF(H3;C1+1;"ym");"[>] 0"" mois "";")&TEXTE(DATEDIF(H3;C1+1;"md");"[>1]0"" jours "";[>]"" 1 jour "";");" 0 jour"))

Explications :

C1 est la cellule qui reçoit la date système.
H1:H32 reçoivent des dates de naissance saisies
I1:I32 reçoivent les résultats

Je cherche à intégrer votre formule mais n'y arrive pas.

Merci encore.
0
wilfried_42 Messages postés 907 Date d'inscription mardi 19 août 2008 Statut Contributeur Dernière intervention 8 décembre 2009 242
2 nov. 2008 à 18:05
bonjour

une cellule qui doit recevoir une date qui n'est pas remplie à pour valeur implicite 0 en numérique or 0 correspond au 0 janvier 1900 et 1 au 1er janvier 1900 (le calendrier de bilou commence au 1/01/1900)
pour pallier à cela il te faut tester la valeur de la cellule qui contient la date

=SI(A1>0;formule_age;"")
1
borislepujolais
3 nov. 2008 à 12:15
J'ai bienessayé ta proposition, mais n'arrive pas à l'intégrer dans ma formule (dans ou avec une succession de SI)

Ma formule (trouvée sur ce site) :

=(SI(C1+1-H3;TEXTE(DATEDIF(H3;C1+1;"y");"[>1]0"" ans "";[>]""1 an "";")&TEXTE(DATEDIF(H3;C1+1;"ym");"[>] 0"" mois "";")&TEXTE(DATEDIF(H3;C1+1;"md");"[>1]0"" jours "";[>]"" 1 jour "";");" 0 jour"))

Elle fonctionne très bien et affiche l'âge en années, mois et jours.

Encore merci.
0
wilfried_42 Messages postés 907 Date d'inscription mardi 19 août 2008 Statut Contributeur Dernière intervention 8 décembre 2009 242
3 nov. 2008 à 12:24
re:

ta formule :
=SI(H3>0;(SI(C1+1-H3;TEXTE(DATEDIF(H3;C1+1;"y");"[>1]0"" ans "";[>]""1 an "";")&TEXTE(DATEDIF(H3;C1+1;"ym");"[>] 0"" mois "";")&TEXTE(DATEDIF(H3;C1+1;"md");"[>1]0"" jours "";[>]"" 1 jour "";");" 0 jour"));"")
1
borislepujolais
3 nov. 2008 à 15:23
Une formule qui fonctionne impeccablement bien.

Merci
0
borislepujolais
3 nov. 2008 à 15:26
Je conserve la formule précieusement.
Merci encore
0
borislepujolais
3 nov. 2008 à 15:27
Je conserve la formule précieusement.
Merci encore
0
Utilisateur anonyme
3 nov. 2008 à 12:41
Re
ou bien
=SI(H3>=1;SI($C$1+1-H3;TEXTE(DATEDIF(H3;$C$1+1;"y");"[>1]0"" ans "";[>]""1 an "";")&TEXTE(DATEDIF(H3;$C$1+1;"ym");"[>] 0"" mois "";")&TEXTE(DATEDIF(H3;$C$1+1;"md");"[>1]0"" jours "";[>]"" 1 jour "";");" 0 jour");"")
1
borislepujolais
3 nov. 2008 à 15:24
Cette formule marche tout aussi bien.

Je la conserve.

Merci beaucoup. problème résolu.
0