Public Function DiferenciaFechasFinal(dtmFecha1 As Date, dtmFecha2 As Date) As String Dim dtmFechaMayor As Date Dim dtmFechaMenor As Date Dim intAños As Integer Dim intMeses As Integer Dim intDias As Integer If dtmFecha1 >= dtmFecha2 Then dtmFechaMayor = dtmFecha1 dtmFechaMenor = dtmFecha2 Else dtmFechaMayor = dtmFecha2 dtmFechaMenor = dtmFecha1 End If 'Averiguar cuántos años intAños = DateDiff("yyyy", dtmFechaMenor, dtmFechaMayor) 'Cambiar el año de la fecha menor al mismo que la fecha mayor dtmFechaMenor = DateSerial(Year(dtmFechaMayor), Month(dtmFechaMenor), Day(dtmFechaMenor)) 'Averiguar cuántos meses intMeses = DateDiff("m", dtmFechaMenor, dtmFechaMayor) 'Cambiar el año y el mes de la fecha menor a los mismos que la fecha mayor dtmFechaMenor = DateSerial(Year(dtmFechaMayor), Month(dtmFechaMayor), Day(dtmFechaMenor)) 'Averiguar cuántos días intDias = DateDiff("d", dtmFechaMenor, dtmFechaMayor) Dim StrMesNegativo As String Dim StrDiaNegativo As String If intMeses < 0 Then StrMesNegativo = " menos " Else StrMesNegativo = " mas " End If If intDias < 0 Then StrDiaNegativo = " menos " Else StrDiaNegativo = " mas " End If DiferenciaFechasFinal = intAños & " Años" & StrMesNegativo & Abs(intMeses) & " Meses" & StrDiaNegativo & Abs(intDias) & " Días" End Function