Pelearse con fechas es una cosa muy común cuando se trata de calcular días hábiles o laborables a futuro. Afortunadamente, en Google Sheets tenemos fórmulas que nos ayudan mucho para no tener que hacer estos cálculos manualmente. Aproximar una fecha de envío futura o una fecha de término de un proyecto puede simplificarse mucho si tenemos una forma de calcular el siguiente día hábil después de una fecha inicial. Eso es justo lo que aprenderemos hoy con la fórmula WORKDAY.

Calcular siguiente día hábil

Comencemos entonces por conocer la fórmula WORKDAY (DIA.LAB en español). WORKDAY nos ayuda a calcular el siguiente día hábil dada una fecha inicial y un número de días hábiles que deben transcurrir a partir de esa fecha inicial.

La sintaxis de WORKDAY es

=WORKDAY(fecha_inicial, número_días_hábiles, días_inhábiles)

Por ejemplo, si consideramos la fecha inicial del primero de enero de 2022, que cae en sábado, y utilizamos la fórmula WORKDAY pidiéndole que calcule un día hábil, tendremos como resultado que debe ser el lunes 3 de enero.

Y si cambiamos los días hábiles a contar a 5, entonces tendremos como resultado el viernes 7 de enero.

Esto puede ser muy útil si tienes que calcular, por ejemplo, una fecha de término de un proyecto si de antemano sabes que requerirá 20 días hábiles de trabajo. Otro uso práctico que le puedes dar, es calcular la fecha de envío de un producto si ya sabes que requieres 4 días hábiles para surtir cualquier orden.

NETWORKDAYS vs WORKDAY

Como recordarás, antes ya hemos revisado la fórmula NETWORKDAYS, que nos provee una forma muy práctica de calcular el número de días hábiles o laborables entre dos fechas, considerando fines de semana y días específicos que marcamos como inhábiles, como días festivos o vacaciones asignadas. La diferencia ahora es que ahora con la fórmula WORKDAY, sabemos de antemano el número de días hábiles que deben transcurrir además de la fecha inicial y ahora queremos saber la fecha final.

Es fácil confundirse un poco con ambas fórmulas, pero dependiendo de nuestra necesidad, fácilmente podremos diferenciar cuál debemos usar.

Listar días hábiles entre dos fechas

Ahora que ya sabemos utilizar WORKDAY, vamos a crear una calculadora muy práctica que nos dirá las fechas exactas que corresponden a días hábiles entre dos fechas específicas. Antes con NETWORKDAYS, podíamos saber solo el número de días hábiles, pero, ¿a qué fechas corresponden esos días?

Comencemos con dos fechas, una inicial y una final, y también con nuestra lista de días inhábiles o de vacaciones, que no deberán contabilizarse en nuestro cálculo.

Ahora, antes de aplicar la fórmula, necesitamos saber la lista de todos los días que hay entre esas dos fechas. Eso lo logramos fácilmente con la fórmula SEQUENCE, que nos permite enumerar tantas filas como necesitemos si le damos un parámetro de inicio y un incremento. En nuestro caso, la diferencia entre las dos fechas nos dará como resultado el número de días entre ambas, y la fórmula completa entonces enumerará cada día entre las dos fechas.

=SEQUENCE(B2-B1,1,B1,1)

Ahora sí, vamos a aplicarle la fórmula WORKDAY a cada día de esta lista, asumiendo que queremos siempre el día hábil siguiente de cada fecha, usando 1 como argumento en el número de días.

WORKDAY(SEQUENCE(B2-B1,1,B1,1),1,A5:A11)

Recuerda que para que una fórmula que usualmente solo da un resultado, se repita y se despliegue para todo un rango, debemos encapsularla en ArrayFormula. Lo hacemos fácilemente presionando CTRL + SHIFT + ENTER:

=ArrayFormula(WORKDAY(SEQUENCE(B2-B1,1,B1,1),1,A5:A11))

Como puedes ver, ya tenemos un resultado parcial, pero fíjate cómo el siguiente día hábil de muchos de los días que teníamos resulta ser el mismo: por ejemplo, el lunes es usualmente el siguiente día hábil tanto del sábado como del domingo.

Entonces lo único que nos resta por hacer es aplicar la fórmula UNIQUE a este rango, y así ya tendremos el resultado completo, que funcionará para cualquier par de fechas:

=UNIQUE(ArrayFormula(WORKDAY(SEQUENCE(B2-B1,1,B1,1),1,A5:A11)))

Cambiar fines de semana

Por último, no hay que dejar de mencionar la fórmula que funciona como complemento a WORKDAY, es decir: WORKDAY.INTL (DIA.LAB.INTL).

WORKDAY.INTL funciona igual a WORKDAY, solo que nos permite cambiar qué días de la semana se consideran fin de semana y cuáles no. La sintaxis es:

=WORKDAY.INTL(fecha_inicial, número_días_hábiles, fin_de_semana, días_inhábiles)

Como vimos antes con NETWORKDAYS.INTL, el argumento de fin de semana debe ser una cadena de 7 caracteres, uno por cada día de la semana, que pueden ser 0 o 1 dependiendo de si ese día se considerará fin de semana o no.

Por default el fin de semana siempre es sábado y domingo, osea cinco ceros y dos unos "0000011" , pero puede ser que para ciertos desafortunados casos, debamos considerar los sábados como laborables en nuestro cálculo, osea seis ceros y un uno "0000001". Si cambiamos nuestra fórmula, veremos cómo ahora se incluyen los sábados correspondientes:

También podríamos decir que para ciertos casos más afortunados, los lunes serán parte del fin de semana además de sábado y domingo, y eso lo indicamos con "1000011". ¿No sería genial desaparecer los lunes? 😉

¡Y listo! Ahora ya sabes cómo calcular y listar los días hábiles entre cualquier par de fechas. Estoy seguro de que le encontrarás muchísima utilidad a la fórmula de WORKDAY.

Plantilla terminada para descargar

Guía en video

Si tienes dudas puedes ver esta misma guía explicada en video:

¡Espero que te haya sido útil esta guía! No olvides seguirnos en YouTube para más tips, trucos y guías de productividad.

Aprende Sheets: Curso práctico de Hojas de cálculo de Google
Aprende Sheets: Curso práctico de Hojas de cálculo de Google