Calcular días de vacaciones en Excel

Los trabajadores de una empresa tienen derecho a un período vacacional anual, y dependiendo de las leyes laborables de cada país, se establece un método para calcular los días de vacaciones a los que tiene derecho el trabajador.

En la gran mayoría de los países, el cálculo de los días de vacaciones se basa en la antigüedad que tiene un empleado dentro de la empresa y por lo tanto, a mayor antigüedad, mayor será el número de días de vacaciones a los que tenga derecho una persona.

Ejemplo de cálculo de días de vacaciones

Como ejemplo tomaré la Ley Federal del Trabajo en México que estipula que los trabajadores con más de un año de servicio podrán disfrutar de un periodo vacacional de seis días laborales el cual aumentará en dos días cada año hasta llegar a doce. Después del cuarto año de servicio el aumento será de dos días de vacaciones por cada cinco años. Esta regla la podemos resumir de la siguiente manera:

  • 1 año de servicio = 6 días de vacaciones.
  • 2 años de servicio = 8 días de vacaciones.
  • 3 años de servicio = 10 días de vacaciones.
  • 4 años de servicio = 12 días de vacaciones.
  • De 5 a 9 años de servicio = 14 días de vacaciones.
  • De 10 a 14 años de servicio = 16 días de vacaciones.
  • De 15 a 19 años de servicio = 18 días de vacaciones.
  • De 20 a 24 años de servicio = 20 días de vacaciones.
  • De 25 a 29 años de servicio = 22 días de vacaciones.

Aunque nuestro ejemplo de cálculo de días de vacaciones estará basado en las leyes mexicanas, seguramente podrás adaptar el ejemplo al caso particular de tu país, solo debes poner especial atención en el primer paso que es traducir la regla anterior a una tabla de equivalencias.

Tabla de equivalencia de días de vacaciones

Para poder calcular los días de vacaciones en Excel será necesario traducir la regla establecida por  la ley laboral haciendo una equivalencia entre los años de servicio (antigüedad) y los días de vacaciones correspondientes. Es así como he llegado a la siguiente tabla de datos que refleja todo el detalle de la regla descrita anteriormente:

Calcular días de vacaciones en Excel

La creación de esta tabla es de suma importancia porque será nuestra referencia para obtener los días de vacaciones que corresponden a cada trabajador de acuerdo a su antigüedad. Un requisito indispensable en la construcción de esta tabla es que la primera columna (Antigüedad) debe estar ordenada de manera ascendente o de lo contrario la fórmula que utilizaremos posteriormente devolverá resultados erróneos.

También es importante mencionar que para los rangos de años indicados en la regla, es suficiente con colocar el límite inferior. Por ejemplo, la regla dice que de 5 a 9 años se tiene derecho a 14 días de vacaciones y en la tabla solo he colocado el valor 5 con su equivalencia de 14 días de vacaciones. En los siguientes pasos verás que esa línea será suficiente para cubrir el rango entre 5 y 9 años de servicio.

Calcular la antigüedad de un empleado

Ahora que hemos creado la tabla de equivalencias podremos realizar al siguiente cálculo que es la antigüedad de una persona dentro de la empresa. Este cálculo se obtiene a partir de la fecha de contratación por lo que es indispensable tener ese dato para cada empleado. En la siguiente imagen puedes observar la información de ejemplo para tres empleados:

Cálculo de fechas en Excel: Días de vacaciones

Para obtener la antigüedad de Hugo utilizaré la función SIFECHA de la siguiente manera:

=SIFECHA(E2, HOY(), "y")

El primer argumento de la función es la fecha de contratación. El segundo argumento es la fecha del día de hoy y el tercer argumento indicará a la función que obtenga la diferencia entre ambas fechas en años. Al copiar la fórmula hacia abajo obtengo la antigüedad en años para cada empleado:

Cálculo días de vacaciones

La función SIFECHA devuelve los años cumplidos y no una mera diferencia entre el número de años y por esa razón, Hugo tendrá 5 años de antigüedad hasta el 10 de agosto del 2014. Si quieres saber un poco más sobre esta función te recomiendo leer el siguiente artículo: La función SIFECHA en Excel.

Calcular los días de vacaciones en Excel

El paso final es encontrar el valor de la columna F (Antigüedad) dentro de la columna A y obtener el valor correspondiente de la columna B que son los días de vacaciones. Esto es un trabajo para la función BUSCARV y solo debemos de poner especial atención a su cuarto argumento:

=BUSCARV(F2, A2:B10, 2, VERDADERO)

Cuando utilizamos la función BUSCARV es muy común indicar el valor FALSO en su cuarto  argumento para indicar una búsqueda exacta pero ahora necesitamos realizar una búsqueda aproximada ya que existen rangos en los años de servicio. Cuando hacemos una búsqueda aproximada y la función BUSCARV no encuentra el valor indicado, devolverá el valor inmediato inferior. Observa el resultado de utilizar la fórmula propuesta:

Cómo calcular días de vacaciones en Excel

Para Hugo obtenemos 12 días de vacaciones ya que es el valor que coincide exactamente con la fila de los 4 años de antigüedad dentro de la tabla. Sin embargo, al buscar el valor equivalente a los 12 años de servicio de Paco, la función BUSCARV no encuentra un valor exacto por lo que devuelve el valor inmediato inferior a 12 que es la fila de 10 años la cual tiene asociado el valor de 16 días de vacaciones. Lo mismo sucede al obtener los días de vacaciones para Luis, la función BUSCARV devuelve el valor correspondiente a la fila de 20 años que son precisamente los 20 días de vacaciones que le corresponden.

Es así como la búsqueda aproximada de la función BUSCARV nos ayuda a implementar fácilmente una búsqueda dentro de rangos numéricos y de esta manera obtener los días de vacaciones en Excel para cada uno de los empleados en nuestro ejemplo. Si quieres saber un poco más sobre el cuarto argumento de la función BUSCARV consulta el siguiente artículo: El argumento Ordenado de la función BUSCARV.

Para finalizar quiero decir que el valor predeterminado del cuarto argumento de la función BUSCARV es precisamente VERDADERO por lo que podríamos omitirlo por completo de nuestra fórmula y seguir obteniendo los mismos días de vacaciones. Solo he insistido en el valor VERDADERO para marcar la diferencia con el valor FALSO que generalmente utilizamos al realizar búsquedas exactas. En la siguiente fórmula puedes observar que no está presente el cuarto argumento y sin embargo seguimos obteniendo los mismos resultados anteriores para los días de vacaciones:

Cálculo de vacaciones en Excel