Meses de 30 días, cálculo entre fechas, días transcurridos (solo inteligentes)
-->Meses de 30 días, cálculo entre fechas, días transcurridos (solo inteligentes): En este artículo voy a explicar como realizar el cálculo entre dos fechas para obtener el número de días transcurridos partiendo de una fecha de ingreso o fecha inicial hasta una fecha de cese o fecha final con la particularidad de que todos los meses tienen 30 días; se que muchos estarán preguntándose por que no usé la función =dias360() para hacer este sencillo cálculo, la razón es simple, esta fórmula no es de ayuda cuando el intervalo de fechas abarca el mes de febrero, peor aún cuando febrero tiene 29 días, por ejemplo ¿cuantos días han transcurrido desde el 01/01/2011 al 30/06/2011 suponiendo que cada mes tiene 30 días?, rápidamente encontramos la respuesta que es 180 días (6 meses), que hubiera pasado si hubiese utilizado la función =dias360(), pues el resultado obtenido sería 179 días y si en el caso hipotético tuviese que pagarle a un trabajador por sus días laborados le hubiera pagado menos, mejor para mí pero seamos justos.
Razonemos brevemente, febrero trae menos de 30 días pero nos pagan por mes completo, pasa lo mismo con los meses que traen 31 días, o acaso ¿nos pagan más en estos meses?, esa es la idea central del artículo, realizar el cálculo entre fechas considerando que todos los meses tienen 30 días.
Debe quedar claro que la función =días360() no esta errada, simplemente su ámbito y forma de aplicación es otra, al final dejaré un enlace con la explicación de por que sucede esto, pero para lo que buscamos no es correcto usar esta u otra función en lo que se refiere a fechas, debemos elaborar nuestra fórmula complementándola con algunas otras funciones.
EXPLICACIÓN PASO A PASO
Para entender la aplicación de esta fórmula necesito que estés muy atento ya que es un poco engorrosa y te parecerá confusa; sin embargo es muy fácil aunque me tomo tiempo hacerla, por cierto el desarrollo de este método es 100% de mi autoría, lo digo por los copiones que en estos tiempos esta muy de moda.
Se solicita calcular el tiempo de servicio (en días) de Gustavo Sebastiani considerando que todos los meses tienen 30 días, el empezó a trabajar el 13/01/2015 y termino su contrato el 31/07/2015.
TODOS LOS CÁLCULOS LO VOY A HACER POR SEPARADO Y LUEGO LO UNO EN UNA SOLA CELDA.
- Lo primero que debemos hacer es simplificar las fechas, por ejemplo es más fácil hacer el cálculo para periodos completos por lo cual nos ayudaremos de la función =FIN.MES().
=FIN.MES(B2,-1)+1 con esta fórmula siempre iniciaremos el mes con el primer día.
=SI(FIN.MES(B3,0)=B3,FIN.MES(B3,0),FIN.MES(B3,-1)) esto se lee de la siguiente forma: si la fecha de cese (fecha final) es igual al último día de dicho mes entonces se debe quedar como tal en caso contrario consideraremos la ultima fecha del mes anterior (en el presente ejemplo se presenta esta última, si la fecha de cese hubiera sido 31/07/2015 se hubiera mantenido este dato). - Todos los cálculos que a continuación explico lo pueden encontrar en la hoja llamada «Nivel Pollito».
- En la celda D5 escribimos =REDONDEAR(DIAS360(D2,D3)/30,0)*30 donde DIAS360(D2,D3) nos calcula de forma aproximada los días transcurrido entre las dos fechas (del 01/01/2015 al 30/06/2015) como resultado nos da 179 días lo cual no es correcto, lo ideal hubiese sido 180 días sin embargo este valor de 179 es muy aproximado, DIAS360(D2,D3)/30 si lo dividimos entre 3o obtendremos 5.9667 meses es decir casi 6 meses, pero si este valor lo redondeamos a 0 decimales REDONDEAR(DIAS360(D2,D3)/30,0), es decir a la unidad superior obtendremos 6 y esto multiplicado por 30 días nos dará los días exactos transcurridos entre estas dos fechas =REDONDEAR(DIAS360(D2,D3)/30,0)*30.
- Ahora vamos a quitarle los días en la fecha de ingreso y adicionarle los días a la fecha de cese, recuerden que me esta tomando desde el primer día del mes para la fecha de ingreso y para la fecha de cese me esta tomando el último día del mes anterior (si la fecha de cese hubiera coincidido con el último día del mes entonces no hay necesidad de agregarle días), para el ejemplo a los 180 días transcurridos le vamos a quitar 13 días y agregarle 17 días, también le sumaremos + 1 ya que los días se cuentan empezando por el mismo día.
- Hemos terminado, el resultado final es 185 días transcurridos tomando en cuenta meses de 30 días, hagan todos los cálculos que quieran para que comprueben que funciona correctamente. COMO ADICIONAL COLOCO UNAS FORMULAS SIMPLES PARA SEPARAR LOS DIAS EN AÑOS, MESES Y DÍAS.
- En una sola celda la fórmula sería (escríbelo en la celda D9 para comprobar):
=(REDONDEAR(DIAS360((FIN.MES(B2,-1)+1),(SI(FIN.MES(B3,0)=B3,FIN.MES(B3,0),FIN.MES(B3,-1))))/30,0)*30+(SI(FIN.MES(B3,0)=B3,0, DIA(B3))-DIA(B2)))+1
Excelente profe. Muchas gracias por tu explicación.
Hola, de nada, saludos.
MUCHAS GRACIAS
ME FUE DE GRAN AYUDA
SIGA ADELANTE
Hola, gracias por su comentario, saludos.
Hola, tengo un problema que no he podido solucionar.
Debo calcular los días transcurridos entre dos fechas, de tal manera que me diga los días transcurridos de un mes especifico.
Ejm: Fecha ingreso 10/05/2021 – Fecha egreso 05/06/2021, al restar fecha final de fecha inicial arroja 26 (este es el total dias estancia).
Necesito que me calcule los dias del mes 05, o sean 21 dias (Dias cama ocupada en el mes de mayo), el listado de fechas a revisar es de 1440. Que formula se podria utilizar?
Gracias de antemano
Hola, escribanos al correo: [email protected] para poder ayudarle. Saludos.
Saludos,
Excelente la fórmula!!! Al fin pude dar solución a algo que parecía imposible.
Pero ahora me surgió otro y no he podido resolverlo.
1/01/2020 31/12/2020 360
1/02/2021 28/02/2021 30
1/02/2021 30/04/2021 90
1/01/2021 30/09/2021 270
0/01/1900 0/01/1900 #¡NUM!
0/01/1900 0/01/1900 #¡NUM!
0/01/1900 0/01/1900 #¡NUM!
0/01/1900 0/01/1900 #¡NUM!
Las fechas que aparecen como 0/01/1900 corresponden a celdas donde no necesito incluir fecha y por tanto digito cero. Con formato condicional hago invisible ese cero (0) que en la barra de formulas me aparece como 0/01/1900. Como puedo solucionar el error?
Gracias de antemano…
Hola, escribanos al correo: [email protected] para poder ayudarle. Saludos.
El error lo puede corregir indicando antes de la fórmula la función SI.ERROR((DIAS360(A1;B1;0));»»)
Y para las fechas agregar otra columna que indique SI(A1=0;VALOR.NUMERO(F1167;»,»;»;»)
Muchas gracias me sirve para hacer los cálculos de pagos de retroactivos manuales de mi planilla
Saludos
Hola, nos alegra, gracias por su comentario, saludos.
No funciona cuando la fecha de inicio es en febrero, por ejemplo 23/02/2021 toma que pasaron 8 dias del 23 al 28 lo cual no es correcto.
Hola, si es correcto, asume que todos los meses sin importar Febrero tiene 30 días, ya que para temas contables se trabaja así. Saludos.
Exacto, y para temas laborales, tal como indica el Plame, se asume 30 días laborales al mes y se le resta los días no trabajados.
30 – 22 ( no trabajado del 01 al 22) = 8 días.
Muchas por compartir Gustavo.
Muchísimas gracias!! me sirvió para dejar de hacer cálculos manuales.
Hola, gracias por su comentario, nos alegra que le haya servido. Saludos.
Genial aporte !!! Muchas gracias !
Hola, gracias por su comentario, saludos.
Muchísimas gracias, ha sido de gran ayuda, creo que nunca hubiera podido encontrar la fórmula correcta 🙂
Hola, gracias por su comentario, nos alegra que le haya servido. Saludos.
Excelente aporte. Mil gracias.
Excelente explicacion. Hace tiempo que necesitaba de una formula como esa. Gracias.
Muchísimas gracias, ha sido de gran ayuda para realizar recálculos para la auditoría que estoy ejecutando.
Saludos.
Estimado, estuve dos días intentando dar con una forma para calcular los días efectivos de trabajo, los cuales están asociados a horas de contrato, pero no pude con ninguna, hasta que di con tu formula de calculo, la cual es efectivamente lo que necesitaba.
Muchas gracias por semejante aporte.
Muy agradecido por la fórmula.
Gracias
muy buen aporte muchas gracias
Fabuloso. muy agradecido.
EXCELENTE,gracias por tu ayuda
Hola Mario, es un gusto saber que el archivo te fue de ayuda. Saludos
Muy bueno…
Buenos dias.
Es una solucion interesante, pero hay que matizar que la diferencia entre dos fechas por defecto excluye una de las dos: del 1/2/2015 al 2/2/2015 va un dia.
Si aceptamos esto, Dias360() funciona bien, sólo hay que sumarle un dia (almenos en el ejemplo de dias entre 1 de enero y 30 de junio, tambien para los dias entre 13/1/2015 y 30/6/2015 ambos inclusive)
El problema con febrero existe igual, pero será una cuestión de qué convenio se adopta para los dias entre, por ejemplo 29/2/2016 y 15/3/2016, yo creo que deberia ser 15, pero Dias360 con el método 1 (europeo) contesta 16 y con el método por defecto contesta 15. Por contra, entre 1/1/2015 y 31/12/2015 Dias360 contesta 359 por el método 1 (es la que a mi me parece correcta) y 360 por el método por defecto.
ALbert es correcta tu apreciación sin embargo para este artículo era uniformizar todo a 30 días, como tu dices si lo aplicamos a la vida real, sería cuestión de llegar a un acuerdo.
excelente muchas gracias por el aporte
Escelente! esto va muy bien cuando se maneja políticas de pago.
Hice pruebas y todo va bien; cuando se trata de temas laborales la forma de contabilizar los días debe ser la misma para cada proceso (remuneración, liquidación, cts, etc); en las pocas empresas que conozco se paga siempre asumiendo que el mes tiene 30 días, y en lo meses que no completas se asume 30 y se le restan los días no trabajados. Ejm. ingresas el 05/10/2015 el aunque el mes tiene 31 el calculo es 30 – 4 días no trabajados pagando sobre 26 días. o también puedes ingresar el 02/02/2015, (30 – 1 = 29 días) Ojo no se trata de robar días o aplicar la mas beneficiosa, sino de políticas, en algunos meses te beneficia y en otros no.
Este criterio se considera en esta formulación?
si correcto.
Mi estimado
Quisiera saber si hay una solucion de calculo de fechas en dias, meses y años considerando años bisiestos y la cantidad de dias por mes ya sea 30, 31 y 28 29 dias segun corresponda es decir con 365 dias y 366 dias al año.
Ejemplo: fecha Inicial=13/03/2004
Fecha Final=31/03/2004 Calculando seria : Años = 0, Meses=0, dias=19
Este caso solo es para meses de 30 días.
Gustavo, otra pregunta en mis ventas me hacen retenciones y algunas veces detraciones, com registro estos documentos en el programa, gracias…
Antonio tu comentario no va en este artículo.
Estimado buenos dias, para el primer caso, me parece que el ajuste debería ser mas 2 ya que del 13-01-15 al 17-07-15 hay 186 dias y no 185:
enero 19 (del 13 al 31)
febrero 28
marzo 31
abril 30
mayo 31
junio 30
julio 17
Total 186
Saludos
LEE!!! SE ASUME QUE CADA MES TIENE 30 DÍAS.
Buenas tardes
Gustavo
Sobre el aplicativo para consulta de los porcentajes de AFP se hizo la actualización
Gracias
en estos días lo hago.
Me encuentro casualmente con este Blog y la verdad es que está bastante interesante, ya que trata sobre una parte de los negocios de la que no todos los Blogs hablan. Si lees este comentario me gustaría ver la posibilidad de utilizar parte de tu contenido (con tu referencia por supuesto) para mi Blog.
Gracias Miguel, no hay ningún problema siempre y cuando cites la fuente.
sería interesante conocer tu blog.