Como calcular dias úteis entre datas no Excel

Neste artigo você aprenderá como calcular dias úteis entre datas no Excel.

Introdução

O trabalho com dados no Excel requer atenção especial quando trabalhamos com datas. É importante que entendamos a forma como o Excel armazena as datas a fim de viabilizar os cálculos. Como já discutimos em outros artigos, o Excel armazena datas como números inteiros e o sistema padrão utilizado é o de 1900, no qual a primeira data é 01/01/1900 e a última data prevista é 31/12/9999.

Para alguns profissionais, sobremaneira de Recursos Humanos e Financeiro, cálculos envolvendo dias úteis são vitais para o desempenho das atividades.

Neste sentido, este artigo objetiva abordar os cálculos com dias úteis. Utilizaremos para este fim a função DIATRABALHOTOTAL.INTL para exibir a contagem de dias úteis no período de duas datas.

A função DIATRABALHOTOTAL é restrita a contemplar apenas sábado e domingo como dias não úteis, aspecto em que DIATRABALHOTOTAL.INTL é mais vantajosa por permitir que nós façamos considerações diferentes para os dias, podendo referenciar não apenas sábado e domingo como dias não úteis.

Veja mais sobre a função no vídeo:

A sintaxe da função DIATRABALHOTOTAL.INTL

A função DIATRABALHOTOTAL.INTL possui a sintaxe exibida na imagem a seguir.

O primeiro e segundo argumentos são as datas inicial e final, respectivamente. Ao informar estes argumentos, devemos sempre informar como data final um valor não inferior à data inicial. Caso o façamos, o resultado será negativo ou zero.

O terceiro argumento [fim de semana], optativo, é talvez o mais especial desta função e que na prática a diferencia da função DIATRABALHOTOTAL. Este argumento permite customizarmos o fim de semana. A imagem a seguir exibe as possibilidades padrão deste argumento.

Note que estas possibilidades são de dois dias consecutivos (domingo e segunda, quinta e sexta, sábado e domingo etc.) ou de um dia isoladamente. Note, por exemplo, que se desejarmos adotar sábado e domingo como os dias a desconsiderar da contagem, ou seja, únicos dias não úteis, deveremos utilizar o parâmetro 1. Caso o argumento do fim de semana, uma vez que optativo, não seja indicado, o valor 1 é assumido como padrão, expressando então que o fim de semana considerado será formado pelo sábado e pelo domingo.

O último argumento [feriados], optativo, é utilizado para informamos algumas datas a desconsiderar, podendo de fato ser feriados ou não. Aqui, inserimos em uma lista as datas a serem desconsideradas, como por exemplo, dias de folgas, férias coletivas, pontos facultativos etc. Neste argumento comumente utilizamos uma lista de datas, que fica mais interessante, inclusive, quando presentes em dados no formato tabela.

Cálculos dos dias úteis no Excel

A imagem a seguir mostra o nosso primeiro exemplo, considerando o sábado e domingo como dias de fim de semana e calcula os dias úteis entre as datas (ou seja, os demais dias – de segunda-feira a sexta-feira). Neste primeiro exemplo não estamos considerando um intervalo de feriados.

A fórmula empregada foi =DIATRABALHOTOTAL.INTL(B3;C3;1). Ela poderia omitir o terceiro argumento, visto que desta forma a função assumiria o valor 1. A fórmula então ficaria assim escrita: =DIATRABALHOTOTAL.INTL(B3;C3).

Nesta imagem, para o segundo intervalo de datas (entre 29/11/2021 e 14/12/2021) o cálculo aponta que existem 12 dias úteis (as 12 datas em azul na próxima imagem). De fato, o cálculo reflete a realidade. Neste período, os dias desconsiderados da contagem foram os dias 4, 5, 11 e 12 de dezembro de 2021, ou seja: 4 dias. Levando em consideração que no intervalo entre as datas inicial e final existem 16 dias, temos então nosso resultado: 16 – 4 = 12. Note que as datas inicial e final são consideradas na contagem, fazendo parte diretamente do cálculo.

Agora vamos usar os mesmos intervalos de datas do exemplo anterior, mas desta vez desconsiderando os feriados. Veja a tabela de feriados e os resultados obtidos.

A fórmula empregada foi =DIATRABALHOTOTAL.INTL(B3;C3;1;$G$3:$G$10). Note que o intervalo de feriados, compreendido entre G3 e G10, está devidamente inserido no último argumento da função DIATRABALHOTOTAL.INTL. Perceba neste comparativo que temos dois resultados diferentes do exemplo anterior (sem deduzir feriados) por conta dos feriados agora contemplados nos cálculos.

O intervalo em verde, com feriados desconsiderados, apresentava 37 dias úteis no Excel. Porém, ao considerarmos a lista de feriados, a contagem reduz para 36. Isto ocorre devido à data 02/04/2021, listada como feriado, que está agora sendo descontada. Para o intervalo em amarelo, a contagem reduz de 35 para 33. Esta diferença de 2 dias deve-se às datas 02/11/2021 e 15/11/2021.

É importante salientar que os feriados só terão efeito na contagem tendo em vista algumas condições. Primeiramente, é óbvio, eles devem estar presentes no intervalo entre as datas inicial e final. Além disso, o dia a que se refere o feriado precisa ser um dia útil, ou seja: não deve já estar sendo desconsiderado pelo parâmetro do terceiro argumento, ou seja: se a nossa fórmula desconsidera sábados e domingos, por exemplo, um feriado referente a um domingo não terá efeito para o cálculo porque o domingo já está sendo deduzido previamente.

Customizando os fins de semana

Vimos que a função DIATRABALHOTOTAL.INTL permite definirmos os fins de semana de várias maneiras. Na segunda imagem do item 2 deste artigo vimos que podemos, por exemplo, considerar apenas a terça-feira como dia não útil (terceiro argumento tem valor 13), o que é especialmente utilizado por alguns estabelecimentos comerciais (restaurantes, pizzarias etc.) nos quais este é o dia semanalmente escolhido para as folgas dos funcionários.

Como vimos, as opções disponíveis permitem escolhermos como dias não úteis: um dia isoladamente ou dois dias consecutivos. E se precisarmos de algo específico, como dois dias não consecutivos, a exemplo da terça-feira e quinta-feira, ou ainda, 3 dias, como sábado, domingo e segunda-feira?

Nestes casos, utilizaremos um código formado por zeros e uns e que expressam os dias da semana, a iniciar pela segunda-feira. A tabela a seguir representa os dias indicados em cada posição. Utilizamos o dígito 1 para representar os dias desprezados na contagem geral, ou seja, aqueles entendidos como fins de semana ou dias não úteis.

Abaixo temos alguns exemplos de códigos e os dias considerados como fins de semana.

  • 0000011” – sábado e domingo (dígito “1” nas posições 6 e 7)
  • 0100000” – terça-feira (dígito “1” na posição 2)
  • 0101000” – terça-feira e quinta-feira (dígito “1” nas posições 2 e 4)
  • 0000111” – sexta-feira, sábado e domingo (dígito “1” nas posições 5, 6 e 7)
  • 1000001” – segunda-feira e domingo (dígito “1” nas posições 1 e 7)
  • 0000110” – sexta-feira e sábado (dígito “1” nas posições 5 e 6)

Caso desejemos contar os dias úteis no Excel presentes em um intervalo de datas, considerando que os dias não úteis são a terça-feira, quinta-feira e sexta-feira, este código ficaria “0101100”. Em outras palavras: estaríamos contando a ocorrência dos demais dias: segunda-feira, quarta-feira, sábado e domingo.

Por exemplo, o código “0000011” possui o dígito “1” nas duas últimas posições. Dada a tabela anterior, notamos que eles representam o sábado e o domingo. A imagem a seguir mostra os resultados obtidos: exatamente os mesmos obtidos na primeira imagem do item 3 em que calculamos os dias úteis desconsiderando apenas sábados e domingos.

Cálculos alternativos com a função DIATRABALHOTAL.INTL

Através dos códigos mencionados no item anterior, podemos contar certos dias presentes em um intervalo. Podemos contar, por exemplo, quantas segundas-feiras ou domingos ocorrem em um certo intervalo de datas.

Como o dígito “1” é usado para desconsiderar a data na contagem, podemos usar o dígito “0” apenas na posição de um certo dia para contarmos quantas vezes este dia está contido naquele intervalo.

Com isso, caso desejemos contar quantos sábados existem em um certo intervalo, utilizaremos o código “1111101”. A imagem a seguir mostra quantos sábados existem no primeiro semestre de 2019.

A conclusão é que existem 26 sábados no primeiro semestre de 2019. Neste nosso cálculo, vale lembrar, se quiséssemos deduzir algum sábado previsto, utilizaríamos o último argumento, informando uma lista de datas para serem desconsideradas da contagem, na qual os nossos eventuais sábados estariam inseridos.

Planilha Dias Úteis Excel

Realize o download da planilha deste artigo no botão abaixo. Basta se inscrever na nossa newsletter gratuita para o download automático.

Baixe a planilha


Jardiel Euflázio

Administrador, MOS e MOSE em MS Excel, Jardiel é também MCT e desenvolvedor de soluções baseadas na ferramenta. Apaixonado pelo Excel desde cedo, é criador de conteúdo em seu canal de vídeos aberto ao público no YouTube (Jardiel Euflázio - Excel Prime), no qual trata sobre o tema sempre disposto a colaborar com a comunidade.

Excel não precisa ser complicado

Assine nossa newsletter e receba dicas práticas para dominar o excel