No obtengo el resultado correcto de una función definida en excel 2003
Sres. T.E.
No logro obtener el resultado deseado del siguiente código:
Tengo en una hoja Excel 2003 celda E6 la fecha “01/10/2010”, la cual se obtiene de la formula “=BUSCARV(E4;Trabajadores;3;FALSO)” y en la celda N4 “25/01/2018” la cual es transcrita manualmente, ambas celdas están Formateadas como Fechas .
Datos anteriores son tratados con la siguiente función definidas por el Usuario :
‘La idea de la Función es que retorne los Años Transcurridos entre las dos Fechas.
Dim Años As Variant
' retorna los años
Function AñosAntg(FechaIni, FechaEnd As Variant) As Integer
' comprueba si el valor no es nulo
If IsNull(FechaIni) Then
AñosAntg = 0
Exit Function
End If
Años = DateDiff("yyyy", FechaIni, FechaEnd)
If Date < DateSerial(Year(FechaEnd), Month(FechaIni), Day(FechaIni)) Then
Años = Años - 1
End If
' AñosAntg = CInt(Años)
End Function
Por ultimo coloco la función en la celda “O5”, y el resultado es que muestra en dicha celda el valor correcto esta muestra lo hace de forma relámpago y luego pega el valor “#¡VALOR!” Sustituyendo el resultado correcto.