Option Explicit
Public Function DiffDateAMJ(ByVal DateDebut As Date, ByVal DateFin As Date) As String
Dim NbAnnées As Integer, NbMois As Integer, NbJours As Integer
Dim Temp1 As Date
Temp1 = DateSerial(Year(DateFin), Month(DateDebut), Day(DateDebut))
NbAnnées = Year(DateFin) - Year(DateDebut) + (Temp1 > DateFin)
NbMois = Month(DateFin) - Month(DateDebut) - (12 * (Temp1 > DateFin))
NbJours = Day(DateFin) - Day(DateDebut)
If NbJours < 0 Then
NbMois = NbMois - 1
NbJours = Day(DateSerial(Year(DateFin), Month(DateFin), 0)) + NbJours
End If
DiffDateAMJ = NbAnnées & " a " & NbMois & " m " & NbJours & " j"
End Function
|