Contar días hábiles en Excel

Para contar días hábiles en Excel podemos utilizar un par de funciones que nos ayudarán a calcular el número de días laborables entre dos fechas. Las funciones que utilizaré en este artículo serán las funciones DIAS.LAB y DIAS.LAB.INTL.

Días hábiles con la función DIAS.LAB

La función DIAS.LAB tienes tres argumentos: Fecha inicial, fecha final y vacaciones. Ambas fechas son obligatorias pero las vacaciones son opcionales. Para contar días hábiles simplemente proporcionamos la fecha inicial y final.

Contar días hábiles en Excel con la función DIAS.LAB

En este ejemplo Excel ha contado los días hábiles del mes de enero del 2012 dando por hecho que los fines de semana están compuestos por sábados y domingos. Con la función DIAS.LAB no podemos modificar los días de descanso, solamente podemos indicar días adicionales de vacaciones. Observa el siguiente ejemplo:

Ejemplo de la función DIAS.LAB

Ya que he indicado el tercer argumento de la función como el rango B4:B5, la función DIAS.LAB tomará en cuenta esas dos fechas como vacaciones. Es importante que los días de vacaciones especificados sean días entre lunes y viernes de lo contrario no tendrán efecto alguno en la contabilización de días hábiles.

Días hábiles con la función DIAS.LAB.INTL

Ya he mencionado que la función DIAS.LAB supone que los días de descanso son siempre sábados y domingos. Si deseamos especificar algún día de descanso diferente tenemos que utilizar la función DIAS.LAB.INTL.

El tercer argumento de la función DIAS.LAB.INTL nos permitirá indicar el día o días que conforman el fin de semana. Este parámetro toma su valor de acuerdo a la siguiente tabla:

Fin de semana en la función DIAS.LAB.INTL

Ya que este parámetro es opcional, si omitimos su valor entonces la función DIAS.LAB.INTL supondrá un fin de semana conformado por sábados y domingos. A continuación contaré los días hábiles del mes de enero del 2012 pero indicando el día sábado como el único día de descanso semanal:

Contar días hábiles en Excel con la función DIAS.LAB.INTL

Ahora observa lo que sucede si adicionalmente indico algunos días de vacaciones y manteniendo el sábado como el día de descanso.

Ejemplo de la función DIAS.LAB.INTL para contar días hábiles

Con ambas funciones podemos contar días hábiles en Excel, solo recuerda que si necesitas manipular los días de descanso semanal deberás utilizar la función DIAS.LAB.INTL o puedes utilizar la función DIAS.LAB si el fin de semana siempre está conformado por sábados y domingos.

Artículos relacionados
La función DIAS.LAB.INTL en Excel

36 pensamientos en “Contar días hábiles en Excel

  1. Margarita

    Estimado todo la forma super bien, pero tengo una duda yo necesito sacar la formula por todo el año, y en vez de vacaciones quiero poner dias festivos, tengo los datos anexos y todo, y me resulta la forma, pero tengo una gran cantidad de datos, y al arrastrar la forma no me deja las celdas de feriados como constante, y me va dando otras celdas de feriados, lo que es un problema porque no puedo estar cambiando la formula para 5000 o 10000 datos, seria 10000 veces cambiar la formula.

    Existe en excell algo que pueda arrastrar la formula y no me cambie los feriados….
    Esto me tiene con dolor de cabeza…. no se utilizar macroooo y sólo quiero resolverlo con excell

    Gracias por su colaboiración

    Responder
    1. Moisés Ortíz Autor

      Hola Margarita, sospecho que estás utilizando referencias relativas en tu fórmula y por eso al arrastrarla se modifica la referencia. Te sugiero utilizar referencias absolutas al referirte al rango que contiene los días festivos.

      Responder
  2. Elmar

    Tengo el mismo problema de Magarita, solo quiero proporcionar los dias festivos, como hago la referencia absoluta referente al rango, como es la funcion o formula para eso?

    Responder
    1. Moisés Ortíz Autor

      Hola Elmar, para hacer que una referencia sea absoluta debes utilizar el símbolo $. Para la fórmula que uso en el ejemplo de este artículo, si quiero “fijar” la tabla que contiene los días de vacaciones en lugar de utilizar:
      =DIAS.LAB.INTL(B1,B2,17,B4:B5)

      Debo reemplazar la referencia a la tabla de vacaciones de la siguiente manera:
      =DIAS.LAB.INTL(B1,B2,17,$B$4:$B$5)

      Responder
  3. Analía

    Esta formula no funciona en excel v. 2003?

    Responder
    1. Moisés Ortíz Autor

      Hola Analía, lamentablemente ninguna de las dos funciones está disponible en Excel 2003.
      DIAS.LAB fue introducida a partir de Excel 2007 y DIAS.LAB.INTL a partir de Excel 2010.

      Responder
  4. Raul Castillo

    Estimado tengo el siguiente problema.
    Quisiera calcular la fecha final de vacaciones, solo tengo la fecha inicial y los días hábiles que la persona quiere tomarse de vacaciones.
    En pocas palabras las formulas expuestas no me sirven debido a que la fecha final es una obligación establecerla y en mi caso esta sería mi incógnita.
    muchas gracias por su atención.

    Responder
  5. MARTIN LOZANO

    Buenas tardes Moises, me podrías ayudar no he podido encontrar la formula para actualizar la cantidad de dias transcurridos desde el 01/01/13 a el dia actual o dia de hoy, O no existe tal formula.
    Si es asi hay alguna manera de hacerlo?

    Mil gracias por su ayuda.

    Responder
    1. Moises Ortiz Autor

      Hola Martín, solo debes restar la fecha de hoy con la fecha inicial. Si el valor de la fecha inicial está en la celda A1 utiliza la siguiente fórmula:
      =HOY() – A1

      También puedes utilizar la función FECHA de la siguiente manera:
      =HOY() – FECHA(2013,1,1)

      Responder
  6. Patricia

    Moises, mil gracias por todo tus respuestas, son tan didácticas y de gran ayuda en el desarrollo de nuestras funciones laborales.

    Responder
  7. Luis

    Hola Moisés: Necesito una fórmula Excel que sume las cantidades de una columna (B) que se correspondan con un periodo entres dos fechas (desde xx.xx.xx hasta xx.xx.xx) de otra columna (A).
    ¿Me puedes ayudar?.
    Gracias.

    Responder
  8. Gloribeth Flores

    Y si quiero saber cual es la fecha de inicio y de fin, teniendo el numero de dias habiles ??? Gracias

    Responder
  9. Moises

    Hola excelente la ayuda que das..
    Ejercicio no tengo idea como podría ser ..
    Despido a alguien el 13 de enero del 2014 y tiene 10 días pendientes de vacaciones, a partir del dia 11 incluso, tengo que contar 10 días hábiles ( de lunes a viernes), y sumar a los 10 dias pendientes de vacaciones los días inhábiles que están entre estas fechas.
    osea, desde el 14 hasta el 27 de enero son los 10 días hábiles y entremedio hay 4 días inhábiles osea el resultado es 14. Se puede hacer algo asi en excel ?????
    Saludos guru.

    Responder
    1. Moisés Ortíz Autor

      Hola Moises, para contar días hábiles a partir de una fecha debes utilizar la función DIA.LAB (DIA en singular). Esta función considera sábados y domingos como el descanso semanal. De esta manera, si quieres contar 10 días hábiles a partir del 14 de enero, la fórmula es la siguiente:
      =DIA.LAB(“14/01/2014″, 10)

      La función devolverá la fecha que corresponde a 10 días hábiles posteriores a la fecha indicada. Si quieres modificar los días de descanso semanal, entonces debes utilizar la función DIA.LAB.INTL.

      Responder
  10. Iván Álvarez

    Hola, increible web, lo que me está ayudando.
    Me gustaría saber si hay manera de hacer lo siguiente: necesito crear un excel, donde la casilla 1 sea la fecha por ejemplo (01/04/2014), la casilla 2 sea la fecha de la casilla 1 más 1 día, pero que sea hábil y en la casilla 3 sea la fecha resultante en la casilla 2 más 17 días, pero que también sean hábiles.
    No se si es posible o no, de todas maneras muchas gracias…

    Responder
    1. Moisés Ortíz Autor

      Hola Iván, es posible hacerlo utilizando la función DIA.LAB de la siguiente manera:
      =DIA.LAB(“01/04/2014″, 1)

      Esta fórmula sumará un día hábil a la fecha. Para sumar 17 días solo debes indicarlo en el segundo argumento de la función. Observa que el nombre de la función es DIA en singular.

      Responder
  11. Tania Lira

    Buenas tardes, quisiera pudieran ayudarme con una formula que cuente los días hábiles transcurridos, por ejemplo de fecha de recepción el 22/03/13 fecha de pago 02/04/13, yo cuento 6 pero usando la formula me dan 8. Todo esto para saber que pagos se tramitaron fuera del plazo de 10 días hábiles posteriores a la fecha de recepción.
    Muchas gracias!

    Responder
    1. Moisés Ortíz Autor

      Hola Tania, las funciones de Excel cuentan los “extremos”, es decir, en tu ejemplo se contarán los días 22/03/13 y 02/04/13 por lo que el resultado es 8. Si esa no es la manera en que realizas la cuenta de días hábiles, entonces tendrás que restar el valor 2 a todos los cálculos que realices.

      Responder
      1. Tania Lira

        Muchas gracias!!!!

        Responder
  12. diego

    Necesito apartir de una fecha 05/12/2013, necesito saber que fecha da teniendo encuenta 30 dias habiles.. sin necesidad de mirar un calendario y contar los 30 dias habiles.. una formula que me de la fecha

    Responder
    1. Moisés Ortíz Autor

      Hola Diego, para eso puedes utilizar la función DIA.LAB de la siguiente manera:
      =DIA.LAB(“05/12/2013″, 30)

      Esto devolverá la fecha 16/01/2014 que son precisamente 30 días hábiles después de la fecha indicada. La función DIA.LAB considera el sábado y domingo como los días de fin de semana. Si quieres modificar dichos días de descanso entonces deberás utilizar la función DIA.LAB.INTL.

      Responder
  13. Ruben

    Muy interesante tus explicaciones y bien detalladas, pero esta es mi situación: Actualmente uso esta formula: =TODAY()+3 o =TODAY()-1 para mostrar fechas anteriores, Sanes is hay forma de realizar esto de mostrar fechas posteriores o anteriores, pero exceptuando fines de semana , o los domingos.
    Ejemplo: =TODAY()-1 Muestra esto:9/06/2014
    Si quiero que muestre una fecha antes que no sea domingo, como seria la formula? Ya que si ejecuto la formula descrita arriba me sale fecha 8/06/2014, pero este dia es domingo,por lo que requeriría que me muestre asi 07/06/2014 .
    Gracias
    Saludos

    Responder
    1. Moisés Ortíz Autor

      Hola Ruben, si los días que quieres excluir son los sábados y los domingos, puedes utilizar la función DIA.LAB de la siguiente manera:
      =DIA.LAB(HOY(), -1)

      El nombre de esta función en inglés es WORKDAY y el primer argumento es la fecha a partir de la cual se hace la cuenta y el segundo argumento los días a sumar. En este caso he colocado un -1 para restar 1 día. Si lo días a excluir en esta operación son diferentes a sábado y domingo, entonces deberás utilizar la función WORKDAY.INTL

      Responder
  14. Pepe Fernandez

    Hola Buen dia! espero que me puedan ayudar, estoy trabajando en excel y tengo que especificar las FASES de un proyecto, para esto tengo lo siguinte:
    Fecha inicial del proyecto
    Numero de Dias necesarios para cada fase.
    lo que quiere saber hacer es una formula la cual tome en cuenta la fecha inicial y le sume los dias habiles necesarios para esa fase. resultando esta la fecha inicial de la fase 2 y si a esta le sumo los dias habiles necesarios tendre la fecha inicial de la fase 3. etc etc

    Responder
    1. Moisés Ortíz Autor

      Hola Pepe, utiliza la función DIA.LAB que dará como resultado una fecha después de sumar cierta cantidad de días hábiles. Esta función excluye los sábados y domingos. Por ejemplo, si tienes la fecha inicial en la celda A1 y le quieres sumar 10 días hábiles puedes utilizar la siguiente fórmula:
      =DIA.LAB(A1, 10)

      Es importante notas que la función tiene la palabra DIA en singular y es muy diferente a la función DIAS.LAB.

      Responder
  15. Ezequiel SRT

    Hola buenos dias.
    Mi pregunta es la siguiente, en la columna a tengo varias fechas de emision, y en la columna B quiero que me aparesca la fecha de vencimiento que son de diez dias habiles a partir de la fecha de emision. como se puede hacer? tambien, hay alguna manera de hacer una sola formula para todo, sin tener que poner la formula cada vez que pongo una nueva fecha. muchisimas gracias

    Responder
    1. Moisés Ortíz Autor

      Hola Ezequiel, si los días hábiles que necesitas considerar son de Lunes – Viernes, entonces puedes utilizar la función DIA.LAB de la siguiente manera:
      =DIA.LAB(A1, 10)

      Si necesitas elegir días de descanso diferentes a sábado y domingo, entonces debes utilizar la función DIA.LAB.INTL.

      Responder
  16. exequiel

    hola!! muy buena la ayuda!! haber si me podes ayudar con un problema, tengo que calcular la cantidad de dias laborales, descontando sábados, domingos y festivos, para eso uso la formula: =DIAS.LAB(C9;D9;O3:O7) donde de las celdas O3 a O7 tengo cargado los dias festivos. hasta ahi todo bien. El problema es que si el primer dia(c9) es sabado, domingo o festivo necesito que lo cuente también a ese día. sse podra? desde ya muchas Gracias!!

    Responder
    1. Moisés Ortíz Autor

      Hola Exequiel, eso no es posible con la función DIAS.LAB.
      Tendrás que crear otra fórmula que revise el primer día de la lista para saber si es sábado o domingo o si pertenece a tu lista de días festivos. Para saber si es sábado o domingo puedes utilizar la función DIASEM y evaluar si el resultado es el valor 1 o el valor 7. Te dejo un artículo que habla un poco más sobre esa función:
      http://exceltotal.com/obtener-el-dia-de-la-semana-en-excel/

      Responder
  17. marly

    Buen dia.
    me gustaria saber si hay una formula: de por ejemplo tengo una fecha inicial(01/08/2014) y una fecha final (31/08/2014) necesito saber cuantos dias hay desde la fecha inicial a la fecha final, sacando los sabados y domingos y festivos.
    muchas gracias

    Responder
    1. Moisés Ortíz Autor

      Hola Marly, me pregunto si leíste el artículo porque eso es precisamente lo que muestro en el primer ejemplo. La función DIAS.LAB cuenta los días entre dos fechas descontando los sábados y los domingos y como tercer argumento podrás indicar la lista de días adicionales que deberá omitir la función. En el ejemplo le llamé vacaciones, pero es simplemente una lista de días que la función no deberá considerar en la cuenta.

      Responder
  18. Victoria

    Hola me gustaria poder contar solamente los domingos existentes entre una fecha anterior (27/10/2013) y hoy.
    Gracias. Buen día!

    Responder

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *

Puedes usar las siguientes etiquetas y atributos HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>