Pb résultats aberrants avec DATEDIF

ARCHIMEDE

XLDnaute Nouveau
Bonjour,

J'ai été surpris par les résultats aberrants données par la fonction DATEDIF, selon les dates retenues (cf pièce jointe).

Comment modifier la formule, donnée cellule C44 de la feuille Age du classeur DatesetHeuresCMC, pour obtenir les résultats normalement attendus?

Merci pour vos suggestions
 

Pièces jointes

  • Age.xls
    52 KB · Affichages: 59
  • Age.xls
    52 KB · Affichages: 54
  • Age.xls
    52 KB · Affichages: 61
C

Compte Supprimé 979

Guest
Re : Pb résultats aberrants avec DATEDIF

Bonjour Archimede

Et tout simplement comme ça
Code:
=DATEDIF(C8;D8;"y")&" ans "&DATEDIF(C8;D8;"ym")&" mois "&SI(DATEDIF(C8;D8;"md")>0;DATEDIF(C8;D8;"md")&" jours";"")

A recopier vers le bas ;)

A+
 

Dranreb

XLDnaute Barbatruc
Re : Pb résultats aberrants avec DATEDIF

Bonjour.
Pour m'afficher ce genre d'indication à vocacion apréciative, je préfère m'écrire une fonction perso :
VB:
Function DuréeEnClair(ByVal D As Double) As String
Dim Z As String, M As Double, U As String, N As Long, NDét
Z = ""
M = 365.2425:  U = "an" & IIf(D >= 730.485, "s", ""):    GoSub 2
M = 30.436875: U = "mois":                               GoSub 2
M = 7:         U = "sem":                                GoSub 2
M = 1:         U = "j.":                                 GoSub 2
M = 1 / 24:    U = "h.":                                 GoSub 2
M = 1 / 1440:  U = "min":                                GoSub 2
1 DuréeEnClair = Mid$(Z, 2): Exit Function
Exit Function
2 N = Int(D / M)
If N > 0 Then
   Z = Z & " " & N & " " & U
   D = D - M * N
   End If
If Len(Z) = 0 Then NDét = 0 Else NDét = NDét + 1
If NDét >= 2 Then GoTo 1
Return
End Function
Code:
=SI($E3>0;DuréeEnClair($B$1-$E3);"")
Cordialement
 

Misange

XLDnaute Barbatruc
Re : Pb résultats aberrants avec DATEDIF

Bonjour,

Attention à datedif. Il y a eu de multiples discussions sur ce sujet ici et ailleurs pour signaler que cette fonction est sujette à caution dans de nombreux cas, en particulier les années bissextiles
regarde cette discussion
https://www.excel-downloads.com/threads/difference-de-jours-entre-2-datedif.171238/
Mieux vaut connaître ces limites avant d'utiliser cette fonction
 

Discussions similaires