como calcular el tiempo entre dos fechas

Como calcular el tiempo entre dos fechas en Excel

Opciones preliminares

En principio, para saber Como calcular el tiempo entre dos fechas en Excel, debemos revisar el uso de la funcion SIFECHA, una funcion bastante sencilla de usar pero no tan precisa, a la que no se tiene acceso tan fácil como a las otras funciones de Excel, ya que es una funcion oculta y que aparentemente no aparece, pero, ya he explicado en anteriores publicaciones, el procedimiento para usarla.

Opciones de calculo

Si queremos saber Como calcular el tiempo entre dos fechas en Excel, primero haremos una operación de resta simple, el resultado sería el número de días, a los cuales le aplicamos un formato general o numérico, pero…¿eso sería todo?

Quizás lo mas complicado sería calcular el tiempo entre dos fechas en intervalos de años, meses y días, como lo podría hacer la funcion SIFECHA. Sin embargo, para realizar cálculos mas precisos no sería una opción, y para confirmarlo, podrías revisar algunas de mis publicaciones donde doy mis observaciones respecto a dicha funcion.

¿Que nos queda entonces?

Bueno, nos queda calcularla nosotros sin depender de la función SIFECHA y para eso tenemos disponibles varias funciones de fecha que nos ayudarán con esa misión.

¿Cual podría ser un procedimiento?

Bueno, yo diría que tendríamos que determinar dos datos:

  1. Determinar la cantidad de días que tiene el mes de la fecha más antigua. Por decir, si estamos hablando que la fecha más antigua es 15/08/2016, diríamos que el resultado debe ser 31, ya que agosto tiene 31 días.
  2. Determinar la cantidad de MESES transcurridos entre estas dos fechas y a partir de allí distribuirlo en años, meses y días.

Veamos con un ejemplo mucho mas demostrativo

Como calcular el tiempo entre dos fechas en Excel sin utilizar la funcion SIFECHA

Tenemos una fecha más antigua (fecha inicial) y tenemos una fecha de corte (fecha final)

funciiones de fecha

Primer calculo

Bueno como dije al principio primero determinare la cantidad de días que tiene la fecha inicial. Para eso aplicare a dos funciones. La funcion FIN.MES para calcular el fin de mes de la fecha inicial y luego la funcion DIA para obtener el día.

= DIA( FIN.MES( fecha_inicial ,0)

En ese sentido, el resultado sería 30 que representa la cantidad de días que tiene noviembre del 2014.

 

Segundo calculo

Determinaremos la cantidad de MESES transcurridos entre estas dos fechas y realizaremos el siguiente cálculo, utilizando la funcion AÑO a cada fecha, luego las restamos y finalmente multiplicamos por 12 para llegar a la cantidad de meses.

=( AÑO(fecha_mayor) – AÑO(fecha_menor) ) * 12

Tranquilos, no desesperen, no sería una cantidad de meses absoluta, aún falta calcular más. Por ahora nuestro resultado sería 60 meses.

 

Vamos por más

Aplicaremos la funcion MES para cada fecha, luego las restamos y finalmente le restamos 1. Este cálculo complementará el resultado anterior.

Puede que el resultado sea positivo o negativo, sin duda eso pasará, igual eso definirá la operación a realizar, es decir, si el resultado fuera positivo, sumaremos, pero si el resultado fuera negativo entonces restaremos.

= MES(fecha_mayor) – MES(fecha_menor) – 1

Entonces, teníamos 60 meses en el cálculo anterior y con el resultado de – 4, lo que por ahora nos pone en 56 meses.

 

¿Y los días?

Los convertiremos en meses también!

 

Debemos saber cuantos días faltan para terminar el mes de la fecha inicial y eso nos lo da la siguiente fórmula

=FIN.MES( fecha_inicial ,0) – fecha_inicial + 1

 

Luego debemos saber cuantos días han transcurridos de la fecha final y eso nos lo da la siguiente otra fórmula

=DIA( fecha_final )

 

Sumaremos ambos resultados y obtendremos la cantidad de días totales.

=SUMA ( FIN.MES( fecha_inicial ,0) – fecha_inicial + 1 , DIA( fecha_final ) )

Para lo que va del calculo ya debemos tener 19 días, pero ¿como lo llevamos a meses?

 

¿Se acuerdan del primer calculo?

Esperemos que sí, allí determinamos que la cantidad de días que tiene la fecha inicial es 30 días, por lo que haremos una división, de 19 días / 30 días, lo que nos da un resultado de 0.6333 meses.

Ahora ya tenemos 56.6333 meses transcurridos entre ambas fechas, resultado al que llamaremos Meses_Totales.

¿Ya esta todo?

No, pero dimos un gran paso, ahora debemos distribuirlos en intervalos de años, meses y días.

  • Determinando los años

Vamos a aplicar la funcion COCIENTE para determinar el primer intervalo de tiempo

=COCIENTE( Meses_Totales ,12)

Ya tenemos la cantidad de años transcurridos cuyo resultado es 4 años.

 

  • Determinando los meses

Vamos a aplicar la funcion RESIDUO para determinar el segundo intervalo de tiempo

=ENTERO(RESIDUO( Meses_Totales ,12))

Ya tenemos la cantidad de meses transcurridos cuyo resultado es 8 meses.

 

  • Determinando los dias

Aquí aplicaremos la siguiente fórmula

=( Meses_Totales – ENTERO( Meses_Totales ) ) * DIA( FIN.MES( fecha_inicial ,0) )

Ya tenemos la cantidad de días transcurridos cuyo resultado es 19 días.

 

Listo!!! Ya tenemos el resultado final.

El tiempo transcurridos entre el 27/11/2014 y el 15/08/2019 es 4 años, 8 meses y 19 días.

Articulos relacionados

Funcion SIFECHA para calcular la edad o tiempo de labor

Funcion SIFECHA no funciona bien

MOS Expert CPC Martín Cruz

SIFECHA no funciona

funcion SIFECHA no funciona bien

¿funcion SIFECHA no funciona bien?

Bueno una de las situaciones que se presenta en Excel con la funcion SIFECHA es que no aparece como las otras, tampoco muestra ayuda y tampoco la estructura como si sucede con las otras funciones.

Una vez que sepas como usarla, sugiero revisar mi post anterior, te puedes encontrar en algún momento, que la funcion SIFECHA no funciona bien y/o sus cálculos no son tan precisos como se requiere.

>> Descarga el archivo de trabajo <<

¿funcion SIFECHA datos exactos o aproximados?

La exactitud o la aproximación en Excel esta definida como un argumento más en muchas funciones, sin embargo, en las que no existe este argumento, debemos saber que el resultado que devuelva debe ser un resultado exacto.

¿Cual es el problema de la funcion SIFECHA?

Como esta funcion esta preparada para calcular la diferencia entre dos fechas en una variedad de intervalos diferentes, como el número de años, meses o días, tiene fallas cuando la fecha inicial (primer argumento) pertenece a un mes impar y el mes de la fecha final (segundo argumento) pertenece a un mes par, y viceversa.

Aunque esta falla podría no detectarse tan rápidamente, ante un usuario con mucha casuística, si es detectable.

Sin embargo, la función SIFECHA es una buena función, más ligera que el anidamiento de funciones que tendríamos que hacer para calcular lo que ella hace, pero no es recomendable para realizar calculo formales a nivel empresarial.

Por decir, tenemos el siguiente caso…

Si debemos determinar la permanencia de un trabajador para realizar el calculo de alguno de sus beneficios, llámese salario, o algunos de los conceptos por costos laborales que se calculan sobre la base del salario y el tiempo de permanencia o corte a una fecha determinada, revisaríamos lo siguiente:

SIFECHA caso02

¿Si hacemos el calculo sin acudir a Excel, que diriamos?

Bueno, yo diría, independientemente del contexto en el que me encuentre, ya sea en el lugar de la persona que realiza el calculo o el en lugar de la persona sobre la que se calcula el beneficio, que si tengo que calcular los dias de enero 2018, diria que hay 4 dias de trabajo, contando como día 1 el 28, luego 29,30 y 31 – allí tenemos los 4 días – y luego, meses completos por febrero, marzo y abril.

Ese raciocinio me llevo a determinar que ese trabajador tiene 3 meses y 4 días de trabajo. Pero… ¿has realizado el cálculo con la funcion SIFECHA?

Bueno realicemos el cálculo…

Apliquemos la funcion SIFECHA con los argumentos que se muestra a continuación

SIFECHA caso03

Exacto, el resultado es 3 meses y 2 días.

Bueno, bueno, en algunos casos, cuando utilizamos una funciones de fecha en Excel, a veces, al resultado debemos sumarle o restarle un 1, para llegar al resultado deseado, pero… este no sería el caso, aquí tenemos una diferencia de 2 para llegar al resultado final, y si eso fuera una constante ya estaría la solución, pero aquí la constante es la inexactitud de su calculo, ya que habrá casos donde la diferencia sólo es 1 y por lo tanto no habría precisión.

Mi recomendación para los que usan esta funcion como solución de algun calculo laboral, es que tengan mucho cuidado, podrian estar incurriendo en un error, inducido por la función SIFECHA.

¿Que habría que hacer? Bueno, luego de persignarnos, tendríamos que trabajar en el desarrollo de un algoritmo mejor analizado para que los resultados sean los precisos.

>> Descarga el archivo de trabajo <<

Artículos relacionados

MOS Expert CPC Martin Cruz

funcion SIFECHA Titulo

funcion SIFECHA calcular la edad o tiempo de labor

Trabajando con la funcion SIFECHA

Los que trabajamos en el área administrativa de una empresa, tenemos diversas situaciones en el calculo de tiempos transcurridos entre dos fechas, por lo que, realizar los cálculos para relativas grandes bases de datos, implica tener un poco de destreza en el desarrollo de una fórmula que nos ayude a determinarlo, en un formato de año, meses y días.

>> Descarga archivo de trabajo <<

La funcion SIFECHA no aparece en Excel

La funcion SIFECHA de Excel, es una funcion que no aparece en Excel a diferencia de cualquier otra funcion, ya que es una funcion oculta, sin embargo es una buena opción, ya que sirve como ninguna otra para calcular el tiempo transcurrido entre dos fechas, justo en términos de años, meses y/o días.

La funcion SIFECHA en Ingles

Aunque para el mercado local, la mayoria de usuarios usa la versión en español de Office, hay empresas transnacionales que usan el Office en ingles y en ese sentido deberán usar la funcion DATEDIF.

Para que sirve la funcion SIFECHA

Su funcionamiento no es como cualquier otra función de Excel, ya que Excel no proporciona información de la estructura de la función y tampoco del detalle o nombres de sus 3 argumentos. Sin embargo esta no es una limitante para poder usarla, sólo debemos completar el nombre de la función hasta el parentesis abierto y comenzar a incorporar los 3 argumentos requeridos.

Escribe de la siguiente forma en una celda, sin esperar que Excel reconozca la función “=SIFECHA(” , pero OJO, sólo hasta el paréntesis abierto, no lo cierres!!! … recien allí veras que lo reconoce pero no te mostrará ninguno de sus argumentos.

Una vez que lo hayas escrito, trabaja la siguiente estructura:

=SIFECHA( fecha_menor, fecha_mayor, unidad_de_tiempo)

  • La fecha menor corresponde a la fecha más antigua
  • La fecha mayor corresponde a la fecha más reciente
¿Y los componentes de la unidad de tiempo?

Este argumento funciona casi como la función TEXTO de Excel, pero utiliza sólo unidades de tiempo, por decir:

argumentos funcion SIFECHA

Ejemplo 1

funcion SIFECHA

Como se muestra, de acuerdo a la fechas indicadas, han transcurrido 2 años entre una fecha y la otra.

Ejemplo 2

Ummm, bueno vamos a comprobarlo

  • Primero determinamos los años…

funcion SIFECHA

Del 15/04/2017 al 15/04/2018 ha transcurrido 1 año

  • Siguiente paso, los meses…

funcion SIFECHA

Del 15/04/2018 al 15/05/2018 ha transcurrido 1 mes

  • Finalmente, los días

funcion SIFECHA

Y del 15/05/2018 al 03/06/2018 ha transcurrido 19 días

Advertencia del uso de la funcion SIFECHA

Es bueno mencionar que Microsoft recomienda no usar en la funcion SIFECHA la combinación “MD” porque podría generar un error de calculo por lo que tendrías que evaluar otras opciones de calculo un poco más largas que Excel ofrece.

>> Descarga archivo de trabajo <<

Artículos relacionados

MOS Expert CPC Martín Cruz