Saltar al contenido principal
Calculadora de Días Hábiles

Por Barron Hansen, Fundador · Actualizado el 8 de octubre de 2026

Cómo calcular días hábiles en Excel

Excel tiene dos funciones integradas para trabajar con días hábiles. En Excel en español se llaman DIAS.LAB, que cuenta los días laborables entre dos fechas, y DIA.LAB, que devuelve la fecha situada un número dado de días laborables antes o después de una fecha inicial; en Excel en inglés se llaman NETWORKDAYS y WORKDAY. Las dos excluyen los sábados, los domingos y las fechas que usted indique como festivos, y sus variantes DIAS.LAB.INTL y DIA.LAB.INTL le dejan elegir qué días son fin de semana. Todo lo que sigue se basa en la propia referencia de funciones de Microsoft, enlazada bajo la guía, y cada resultado de ejemplo se ha recalculado con el motor de este sitio.

Contar días hábiles entre dos fechas: DIAS.LAB

=DIAS.LAB(fecha_inicial;fecha_final;[vacaciones])

Según Microsoft, la función devuelve el número de días laborables entre fecha_inicial y fecha_final, y los días laborables no incluyen los fines de semana ni otras fechas que se identifiquen en el argumento vacaciones. Las fechas inicial y final cuentan cuando son días laborables. El propio ejemplo de Microsoft lo muestra: del 1 de octubre de 2012 al 1 de marzo de 2013 la función devuelve 110, que es el número de días entre semana de ese período contando los dos extremos; sin la fecha inicial serían 109.

Ejemplo: con el 1 de abril de 2026 en A2, el 30 de abril de 2026 en B2 y la lista de festivos en E2:E10:

=DIAS.LAB(A2;B2;$E$2:$E$10)

Del 1 al 30 de abril de 2026 hay 22 días de lunes a viernes. Con las fiestas nacionales de 2026 en la lista, el Viernes Santo (3 de abril) queda fuera y el resultado es 21. El argumento vacaciones es opcional; sin lista, la función cuenta todos los días entre semana.

Para no contar la fecha inicial, súmele un día: =DIAS.LAB(A2+1;B2).

Encontrar una fecha de vencimiento: DIA.LAB

=DIA.LAB(fecha_inicial;días;[vacaciones])

DIA.LAB devuelve la fecha situada el número indicado de días laborables después de la fecha inicial, o antes si el número es negativo. La fecha inicial no se cuenta: el ejemplo de Microsoft lleva del 1 de octubre de 2008, con 151 días laborables, al 30 de abril de 2009, que es lo que resulta al contar desde el siguiente día entre semana.

Ejemplo: con el 1 de abril de 2026 en A2:

=DIA.LAB(A2;30;$E$2:$E$10)

Con las fiestas nacionales de 2026 en la lista, Excel devuelve el 15 de mayo de 2026, tras saltar el Viernes Santo y el Día del Trabajo; sin lista sería el 13 de mayo de 2026.

DIA.LAB cuenta días hábiles. Un "Net 30" en días naturales no necesita ninguna función: =A2+30. La guía de Net 30 distingue los días naturales de los hábiles y cita la Ley 3/2004.

Montar una lista de festivos

Escriba cada festivo como una fecha real en su propia celda. Microsoft recomienda insertar las fechas con la función FECHA o como resultado de otras fórmulas o funciones, porque puede haber problemas al escribirlas como texto: =FECHA(2026;1;1) en lugar del texto "1/1/2026". Las fiestas nacionales de 2026 en el calendario de este sitio empiezan por el 1 de enero, el 6 de enero, el Viernes Santo (3 de abril) y el 1 de mayo; a ellas se suman las fiestas de su comunidad autónoma y las locales. La página de festivos de 2026 en España las detalla.

Como los fines de semana ya no son días laborables, un festivo que cae en sábado o domingo no cambia nada, y puede anotar los festivos por su fecha sin comprobar el día de la semana.

Para usar la lista en muchas fórmulas, póngale un nombre. Así lo describe Microsoft: escriba un rótulo como Festivos2026 encima de las fechas, seleccione rótulo y fechas juntos, use en la pestaña Fórmulas la creación de nombres a partir de la selección y, en el cuadro de diálogo Crear nombres a partir de la selección, active Fila superior. Excel asigna a las fechas el nombre del rótulo y la fórmula queda así:

=DIAS.LAB(A2;B2;Festivos2026)

Otros fines de semana: DIAS.LAB.INTL y DIA.LAB.INTL

=DIAS.LAB.INTL(fecha_inicial;fecha_final;[fin_de_semana];[vacaciones])
=DIA.LAB.INTL(fecha_inicial;días;[fin_de_semana];[días_no_laborables])

El argumento fin_de_semana es un número o una cadena de siete caracteres. Los números son 1 (u omitido) para sábado y domingo, 2 a 7 para los demás pares de días (7 es viernes y sábado) y 11 a 17 para un solo día de fin de semana (11 solo domingo, 17 solo sábado); no existen 8, 9 ni 10. En la cadena, cada carácter es un día de la semana empezando por el lunes, 1 para un día no laborable y 0 para un día laborable: "0000011" es sábado y domingo, y "0000110" es viernes y sábado.

Para un fin de semana de viernes y sábado:

=DIAS.LAB.INTL(A2;B2;7;Festivos2026)
=DIAS.LAB.INTL(A2;B2;"0000110";Festivos2026)

Las dos líneas dan el mismo resultado. La guía sobre la semana laboral en el mundo explica qué países descansan qué días.

Dar formato al resultado

DIA.LAB devuelve un número de serie: Excel almacena las fechas como números de serie secuenciales, con el 1 de enero de 1900 como 1 de forma predeterminada. Si la celda muestra 46157 en lugar del 15 de mayo de 2026, dele formato de fecha. Así lo describe Microsoft: seleccione las celdas, presione CTRL+1, en el cuadro Formato de celdas seleccione la pestaña Número, en la lista Categoría seleccione Fecha y elija un formato en Tipo. DIAS.LAB devuelve un número de días y no necesita formato de fecha.

Cuándo una fórmula es más de lo necesario

Para una sola fecha de vencimiento o un conteo rápido, la Calculadora de Días Hábiles es más rápida: lleva los calendarios de festivos de 25 países, así que no hay ninguna lista que mantener. Para el mismo cálculo en muchas filas, las funciones de Excel son la mejor herramienta. La guía de Google Sheets trata las mismas funciones en Hojas de cálculo de Google.

Preguntas frecuentes

¿Qué diferencia hay entre DIAS.LAB y DIAS.LAB.INTL?

DIAS.LAB (en inglés NETWORKDAYS) trata siempre el sábado y el domingo como fin de semana. DIAS.LAB.INTL (en inglés NETWORKDAYS.INTL) tiene un argumento fin_de_semana: un número (1 a 7 para dos días, 11 a 17 para uno) o una cadena de siete caracteres que empieza por el lunes, de modo que un fin de semana de viernes y sábado es 7 o "0000110".

¿DIAS.LAB incluye la fecha inicial y la final?

Sí, cuando son días laborables. El propio ejemplo de Microsoft devuelve 110 del 1 de octubre de 2012 al 1 de marzo de 2013, el número de días entre semana con los dos extremos. Para excluir la fecha inicial, súmele un día: =DIAS.LAB(A1+1;B1).

¿Y si mi lista de festivos incluye fines de semana?

No cambia nada. Los fines de semana ya no son días laborables, y un festivo en sábado o domingo no se descuenta dos veces.

¿Necesita calcular días hábiles? Use nuestra calculadora gratuita de días hábiles.