La función YEARFRAC devuelve la fracción de año representada por el rango de fechas limitado por las fechas pasadas como argumentos.
YEARFRAC(
start_date,
end_date
[, basis]
)
- start_date: Fecha inicial del rango a considerar en formato datetime o en formato de texto, o referencia a una columna conteniendo la fecha inicial.
- end_date: Fecha final del rango a considerar en formato datetime o en formato de texto, o referencia a una columna conteniendo la fecha final.
- basis: Argumento opcional. Número de días a considerar por mes y por año (puede ser una referencia a una columna conteniendo la base a aplicar):
- 0: US (NASD) 30/360
- 1: Actual/Actual
- 2: Actual/360
- 3: Actual/365
- 4: Europeo 30/360
La función YEARFRAC devuelve un número real.
La función considera el número de días enteros entre las dos fechas dadas, de forma que entre el 1 de enero de 2016 a las 00:00 y el 2 de enero de 2016 a las 00:00 considerará un único día.
Si el argumento opcional basis no toma un valor en el rango 0-4, la función devuelve un error. Este argumento indica cuántos días se considerará que tiene cada mes y cada año. De esta forma, entre el 1 de enero de 2016 y el 31 de enero de 2016 se considerarán 30 días para las bases 0 y 4 (que suponen que cada mes tiene 30 días) y 31 días para el resto de bases (que consideran los días reales). De igual forma, se considerará que el año 2016 tiene 360 días para las bases 0, 2 y 4, 365 días para la base 3 y los días reales para la base 1 (366 en el caso del año 2016, pues es bisiesto).
En este ejemplo, el rango es el limitado por los días 1 y 31 de enero de 2016 (30 días enteros):
- La base 0 supone meses de 30 días y años de 360 días, por lo que el rango indicado representa 30/360 = 8.33%.
- La base 1 supone los días reales, tanto en el mes como en el año: 30/366 = 8.1967% (8.20% redondeando a dos cifras decimales).
- La base 3 supone una duración de meses real (30 días) y años de 365 días: 30/365 = 8.2191% (8.22% redondeando a dos cifras decimales).
En este otro ejemplo, el rango es el limitado por las fechas 1 de enero de 2016 y 15 de marzo de 2016:
- Para la base 0 se consideran meses de 30 días y años de 360 días, por lo que el cálculo a realizar es: (30+30+14) / 360 = 20.5555%. En este caso el cálculo implica 30 días tanto de enero como de febrero y 14 días de marzo.
- Para la base 1 se consideran meses y años con sus días reales: (31+29+14) / 366 = 20.2185% (20.22% redondeando a dos cifras decimales).
- Para la base 3 se consideran meses con sus días reales y años de 365 días: (31+29+14) / 365 = 20.2739%.