Tempo e Data

Calculadora de dias úteis

Conta dias úteis entre duas datas ou adiciona dias úteis a uma data de início, com regras de fim de semana e feriado.

01Entradas
02Resultados
Dias úteis
Data de fim
Dias corridos totais
Dias de fim de semana
Feriados
Detalhe do dia
03Como funciona

Porquê este cálculo

Planeamento de projetos, prazos de contratos, condições de pagamento ("líquido 30 dias úteis"), períodos de aviso prévio legais, janelas de resposta regulamentares, folhas de horas de pagamento — todos os locais de trabalho funcionam com aritmética de dias úteis, não de dias de calendário. A aritmética é enganadoramente simples em princípio, mas tediosa na prática: contar dias úteis num período, excluir opcionalmente feriados observados e não saltar acidentalmente um feriado que caia num fim de semana e depois saltar outro. Os calendários de escritório fazem isto mentalmente para períodos curtos (uma semana ou duas); para qualquer coisa além de um mês, fazê-lo manualmente convida a erros que aparecem mais tarde como prazos perdidos ou datas de pagamento disputadas. Este calculador trata de ambas as direções da questão — contar dias úteis entre duas datas dadas, ou projetar para a frente (ou para trás) por um determinado número de dias úteis a partir de uma data de início — e permite aos utilizadores introduzir uma lista separada por vírgulas de datas de feriados que são ignorados para além dos fins de semana.

As opções de ignorar sábado e ignorar domingo são independentes, pelo que o calculador funciona para locais onde a semana de trabalho é de domingo a quinta-feira (Arábia Saudita, partes do Médio Oriente) e não apenas a segunda a sexta-feira padrão.

A fórmula

O calculador itera dia a dia pelo período solicitado. Para cada dia de calendário visitado, classifica o dia como:

  1. Fim de semana se o dia da semana estiver no conjunto a ignorar (sábado e/ou domingo).
  2. Feriado se aparecer na lista de feriados fornecida pelo utilizador e ainda não for classificado como fim de semana.
  3. Dia útil caso contrário.

Para o modo entre (contar dias úteis de data_inicial a data_final inclusive):

  • Percorre todos os dias de início a fim (em qualquer direção).
  • Conta os dias de fim de semana / feriado / úteis.
  • Apresenta as quatro contagens (úteis, fim de semana, feriado, total).

Para o modo adicionar (data_inicial + N dias úteis):

  • Percorre para a frente (N > 0) ou para trás (N < 0) um dia de calendário de cada vez.
  • Decrementa |N| apenas quando o dia é útil.
  • Quando |N| atinge 0, esse dia é a data de resultado.
  • Conta os dias de fim de semana / feriado / úteis ao longo do caminho (dá visibilidade total sobre "passámos por 3 dias de fim de semana e 1 feriado").

A implementação é O(período) — boa para períodos de até vários anos; para períodos > 100 000 dias, a caminhada dia-a-dia abrandaria, mas ainda é tratável em JS no browser. A alternativa de forma fechada (multiplicar semanas completas e aparar extremidades) é mais rápida, mas mais difícil de acertar em torno de feriados que caem em fins de semana. A caminhada dia-a-dia é robusta por construção.

Como usar

Escolha o modo: entre (contar dias úteis num intervalo de datas) ou adicionar (projetar para a frente / para trás).

Introduza a data de início (AAAA-MM-DD). Introduza a data de fim (modo entre) ou os dias a adicionar (modo adicionar; negativo = subtrair).

Ative as opções ignorar sábados e ignorar domingos para o padrão da semana de trabalho no seu local.

Introduza os feriados como uma lista separada por vírgulas, espaços ou ponto e vírgula de datas AAAA-MM-DD. Feriados que caem num fim de semana não são contados duas vezes (já estão excluídos como fins de semana).

O painel de resultados mostra os dias úteis como título principal, a data de fim resultante (no modo adicionar é a nova data; no modo entre é a data de fim de entrada repetida), os dias de calendário totais e as contagens de dias de fim de semana e feriado. O gráfico de barras mostra o detalhe visualmente.

Exemplo trabalhado

Dias úteis do 1º trimestre de 2026 (modo entre, sem feriados):

  • Início 2026-01-01, fim 2026-03-31.
  • Dias de calendário totais: 90 (inclusive).
  • Sábados: 13. Domingos: 13. Feriados: 0.
  • Dias úteis: 90 − 26 = 64.

Se adicionarmos os feriados 2026-01-01 (Ano Novo), 2026-04-06 (Segunda-feira de Páscoa — mas isso está fora do T1), 2026-05-01 (Dia do Trabalhador, fora do T1):

  • Desses, apenas 2026-01-01 cai no intervalo; é uma quinta-feira, pelo que conta como feriado.
  • Dias úteis: 64 − 1 = 63.

+10 dias úteis a partir de 2026-05-04 (uma segunda-feira):

  • 4 de maio (seg) → +1 útil → ir para 5 de maio (ter) → +1 → 6 de maio → +1 → 7 de maio → +1 → 8 de maio (sex) → +1 → 9 de maio (sáb, ignorar) → 10 de maio (dom, ignorar) → 11 de maio (seg) → +1 → 12 de maio → +1 → 13 de maio → +1 → 14 de maio → +1 → 15 de maio (sex).
  • Resultado: 2026-05-15 após 10 dias úteis, passando por 2 dias de fim de semana.

Período de projeto de abril de 2026 menos as duas semanas da Páscoa:

  • Início 2026-04-01, fim 2026-04-30.
  • Feriados 2026-04-06 (Segunda-feira de Páscoa), 2026-04-13 (uma segunda-feira).
  • Dias de calendário totais: 30. Sábados: 4 (4, 11, 18, 25). Domingos: 4 (5, 12, 19, 26). Feriados aplicados: 2026-04-06 (seg, útil → feriado), 2026-04-13 (seg, útil → feriado).
  • Fim de semana: 8. Feriado: 2.
  • Dias úteis: 30 − 8 − 2 = 20.

Armadilhas

Extremidades inclusivas vs. exclusivas. O calculador conta ambas as extremidades no modo entre (1 de abril a 30 de abril = 30 dias de calendário). Alguns contextos legais ("dias úteis a partir da assinatura do contrato") contam apenas os dias após a assinatura; verifique a linguagem do contrato.

Feriado num fim de semana. Se a sua jurisdição transferir um feriado de fim de semana para a segunda-feira seguinte (observância federal dos EUA), introduza a data observada, não a real. O calculador não transfere automaticamente.

Feriados de meio dia. Véspera de Natal, Véspera de Ano Novo e observâncias semelhantes de meio dia útil são específicas da jurisdição. O calculador apenas lida com exclusões de feriados de dia inteiro.

Fins de semana de meio dia (manhã de sábado é uma manhã de trabalho em algumas indústrias antigas). Não modelado; o calculador ignora completamente o sábado ou conta-o totalmente.

Feriados de calendário religioso. Páscoa, Eid, Yom Kippur mudam de data de ano para ano. Calcule a data externamente (a Páscoa é um cálculo lunar do calendário gregoriano) e introduza-a; o calculador não incorpora resolvedores de calendário religioso.

Fuso horários. O calculador funciona em UTC para estabilidade aritmética, mas usa a string AAAA-MM-DD que o utilizador fornece como está. Para contratos onde "dia útil" é definido por um fuso horário específico (por exemplo, hora de Nova Iorque), essa fronteira de dia/fuso horário pode diferir da local; geralmente a diferença não importa na granularidade do dia, mas para contratos transfronteiriços à meia-noite pode importar.

Direção de "adicionar −10". Subtrair dias úteis retrocede. A mesma lógica de ignorar fins de semana aplica-se: −10 dias úteis de uma segunda-feira produz a segunda-feira anterior à anterior, não "10 dias de calendário atrás".

Transições de fim de ano. A aritmética tem em conta o calendário, incluindo o tratamento de dias bissextos (29 de fevereiro apenas a cada 4 anos).

Convenções de fim de semana diferentes. Os EAU passaram de uma semana de trabalho de domingo a quinta-feira para segunda a sexta em 2022. Israel usa de domingo a quinta-feira. A Arábia Saudita usa de domingo a quinta-feira. As opções ignorar sábado / ignorar domingo permitem modelar isto — desmarque ignorar sábado e marque ignorar sexta-feira através da lista de feriados (sextas-feiras do ano se for um padrão fixo).

Feriados são base, não teto. O calculador ignora as datas listadas se fossem de outra forma úteis. Não "adiciona" feriados; se uma data já for fim de semana, colocá-la na lista de feriados não tem efeito.

Feriados flutuantes não tratados automaticamente. Dia de Ação de Graças (4ª quinta-feira de novembro), Dia da Memória (última segunda-feira de maio), Dia da Mãe — estes precisam de ser calculados para o ano alvo e introduzidos como datas concretas. O calculador é um motor aritmético puro.

Horizontes longos. Períodos superiores a 10 anos são calculados corretamente, mas a caminhada por dia é o caminho lento; para horizontes muito longos, uma abordagem de forma fechada semanas × 5 + extremidade de aparo é mais rápida.

Variações

  • Modo horas de trabalho: estende os dias úteis para horas úteis adicionando um dia de trabalho das 9h às 17h e suporte a meio dia.
  • Modo de prazo SLA: mesma aritmética, mas com granularidade de hora e janela de SLA por dia.
  • Pacotes de feriados específicos do país: listas de feriados pré-carregadas (EUA Federal, Espaço Schengen UE, feriados públicos FR, feriados bancários do Reino Unido).
  • Aritmética do ano fiscal: conta dias úteis num período alinhado com o ano fiscal.
  • Cálculo de prazo reverso: dada uma data limite alvo, projeta N dias úteis para trás para encontrar a data "deve começar até".

Calculadoras relacionadas