Pular para o conteúdo principal

Como calcular dias entre datas no Excel: As 5 melhores maneiras

Explore a subtração simples para cálculos de data rápidos e sem esforço. Aplique as funções DAYS() e DATEDIF() para obter intervalos de datas precisos. Use NETWORKDAYS() e TODAY() para rastrear os dias úteis e excluir automaticamente os fins de semana e feriados.
Actualizado 5 de fev. de 2025  · 5 min de leitura

Neste artigo, mostrarei a você algumas maneiras práticas de lidar com encontros. Cobriremos tudo, desde a subtração simples até funções avançadas como NETWORKDAYS() e DATEDIF(). Ao final, você saberá como calcular dias entre datas, controlar dias úteis e até mesmo lidar com cenários específicos, como pular fins de semana ou feriados. Mas, se você não tem experiência com o Excel, confira nosso curso Introdução ao Excel e aprenda o básico. 

Entendendo o sistema de datas do Excel

Para começar, vamos falar brevemente sobre o sistema de datas do Excel. O mais importante que você deve saber é que o Excel armazena cada data como um número exclusivo. Por exemplo, 1º de janeiro de 1900 é o número 1, e 2 de janeiro de 1900 é o número 2, e assim por diante.

Correndo o risco de complicar demais as coisas, gostaria de mencionar dois outros aspectos. Para começar, você deve saber que o Excel usa, na verdade, dois sistemas: o sistema 1900 e o sistema 1904. O sistema de 1900 começa com 1º de janeiro de 1900, como dia 1, e o sistema de 1904 começa com 1º de janeiro de 1904, como dia 0. A diferença entre esses sistemas é de 1.462 dias, ou cerca de 4 anos e 1 dia bissexto. Além disso, saiba que os formatos de data também podem variar de acordo com a região. Por exemplo, 02/03/2025 pode significar 3 de fevereiro ou 2 de março, dependendo de onde você estiver. Se formos inconsistentes com os formatos de data, o Excel poderá interpretar mal os dados e produzir resultados incorretos.

Esses aspectos não serão problemas se você estiver simplesmente calculando os dias entre datas, mas ainda assim é bom saber. Faça nosso curso de Fundamentos do Excel para que você se torne realmente um especialista.

Aprenda os fundamentos do Excel

Adquira habilidades para usar o Excel de forma eficaz - não é necessário ter experiência.
Comece a aprender de graça

Como encontrar dias entre datas no Excel

Há alguns métodos diferentes para você encontrar os dias entre as datas no Excel. Funcionalmente, eles são praticamente os mesmos. Mostrarei cada método e você poderá encontrar o que mais lhe agrada.

Método 1: Subtração simples

A subtração simples é uma das maneiras mais fáceis e rápidas de encontrar os dias entre as datas. Ele subtrai uma data de outra data. Sua sintaxe é:

New date - Old date

Aqui, tenho um conjunto de dados com datas nas células A2 e B2, e na célula C2, insiro a seguinte fórmula:

=B2-A2

Encontrar dias entre datas usando o método de subtração no Excel

Encontre os dias entre as datas usando o método de subtração. Imagem do autor.

Método 2: A função DAYS()

Outra maneira de fazer isso é com a função DAYS(), projetada especificamente para isso. Sua sintaxe é:

=DAYS(end_date, start_date)

Na célula C2, insiro a seguinte fórmula:

=DAYS(B2,A2)

Assim como na subtração, se a data final for posterior à data inicial, o resultado será positivo. Se for antes, é negativo.

Encontrar dias entre datas usando a função DAYS() no Excel

Encontre dias entre datas usando a função DAYS(). Imagem do autor.

Método 3: A função DATEDIF()

Assim como a função DAYS(), DATEDIF() subtrai datas, mas a ordem dos argumentos é invertida. Sua sintaxe é: 

=DATEDIF(start_date, end_date, "d"))

O terceiro argumento especifica a unidade de tempo. Por exemplo, d é para dias, y para anos e m para meses.

Na célula C2, digitei a seguinte fórmula:

=DATEDIF(A2, B2, "d")

No entanto, quando pressionei Enter, recebi um erro#NUM! na terceira linha. Isso ocorre porque a fórmula tenta subtrair uma data mais recente (end_date) de uma data mais antiga (start_date) e a função DATEDIF() não permite isso. Portanto, embora o site DATEDIF() seja mais flexível, pois permite diferentes unidades de tempo, ele também é menos flexível porque não retorna resultados negativos.

Observe também que DATEDIF() é uma função oculta, portanto, o Excel não a sugere enquanto você digita. Isso significa que você terá que digitar tudo manualmente se estiver usando essa função.

Encontrar dias entre datas usando a função DATEDIF() no Excel

Encontre os dias entre as datas usando a função DATEDIF(). Imagem do autor.

Método 4: As funções NETWORKDAYS() e NETWORKDAYS.INTL()

NETWORKDAYS() e NETWORKDAYS.INTL() só encontram dias úteis e excluem fins de semana e feriados. Digamos que você queira saber o número de dias úteis entre duas datas e excluir os fins de semana. Nesse caso, você pode usar a função NETWORKDAYS() para pular os sábados e domingos automaticamente. Sua sintaxe é: 

NETWORKDAYS(start_date, end_date, [holidays])

Por exemplo, se eu não especificar nenhum feriado, ele excluirá apenas os finais de semana. Na célula C2, insiro a seguinte fórmula:

=NETWORKDAYS(A2,B2)

Isso me dá o número de dias úteis entre as datas em A2 e B2, excluindo os fins de semana.

datas usando a função NETWORKDAYS() no ExcelEncontre os dias entre as Encontre os dias entre as datas usando a função NETWORKDAYS(). Imagem do autor.

Se eu também quiser excluir feriados, listo essas datas em uma coluna separada, como E2 a E5. Em seguida, faço referência a esse intervalo no terceiro argumento da seguinte forma:

=NETWORKDAYS(A2,B2,$E$3:$E$4)

Agora, ele calcula os dias úteis, excluindo os finais de semana e os feriados que listei. Isso torna muito fácil obter uma contagem precisa dos dias úteis.

Encontre os dias sem feriados entre as datas usando NETWORKDAYS() no Excel

Usando a função NETWORKDAYS(). Imagem do autor.

Às vezes, meus fins de semana não são o sábado e o domingo padrão. Nesse caso, eu uso a função NETWORKDAYS.INTL(). Isso me permite definir fins de semana personalizados. Sua sintaxe é:

NETWORKDAYS.INTL(start_date, end_date, [weekend], [holidays])

Para o argumento do fim de semana, posso usar um número para escolher um fim de semana predefinido (como 1 para sábado-domingo ou 7 para sexta-sábado) ou até mesmo usar uma cadeia de texto personalizada como 0000011, em que cada dígito representa um dia da semana (começando com segunda-feira). 1 marca como um fim de semana e 0 como um dia útil.

Suponha que meus fins de semana sejam sexta e sábado. Para isso, usarei esta fórmula:

=NETWORKDAYS.INTL(A2, B2, 7, $E$2:$E$3)

datas usando NETWORKDAYS.INTL() no ExcelEncontre os dias entre as Encontre os dias entre as datas usando NETWORKDAYS.INTL(). Imagem do autor.

Método 5: A função TODAY()

Se eu quiser calcular quantos dias se passaram desde uma data específica ou quantos dias faltam para uma data futura, sempre uso a função TODAY(). Essa função retorna a data atual, para que eu não precise atualizá-la diariamente. Sua sintaxe é: 

=TODAY() - past_date

Digamos que a data passada esteja na célula A3. Então, insiro esta fórmula na célula B3:

=TODAY()-A3

Encontre os dias restantes desde a data com a função TODAY() no Excel

Encontre os dias restantes desde a data com a função TODAY(). Imagem do autor.

Se eu precisar saber quantos dias faltam para uma data futura, basta inverter a fórmula:

=Future_date - TODAY()

Assim, você se tornaria: 

=A3 - TODAY()

Encontre os dias até a data futura com a função TODAY() no Excel

Encontre os dias restantes até a data com a função TODAY(). Imagem do autor.

Meus pensamentos: Uma comparação rápida de todas as funções 

Método Do que eu gosto O que eu não gosto
Subtração simples Rápido e fácil Não leva em conta os finais de semana ou feriados
DAYS() Sintaxe clara e estruturada Funciona apenas por alguns dias
DATEDIF() Flexível para dias, meses ou anos Lança um erro quando o valor é negativo

NETWORKDAYS()

NETWORKDAYS.INTL()

Não inclui finais de semana e feriados Requer configuração extra para feriados
TODAY() Atualizações automáticas todos os dias Isso só funciona para cálculos que envolvem o dia atual

Técnicas avançadas

Além do básico, se você lida com cenários complexos, aqui estão algumas técnicas avançadas: 

Manuseio de valores negativos

Quando a ordem das datas é invertida, obtemos um valor negativo. Para corrigi-lo, eu envolvo a função DAYS() dentro da função ABS() desta forma:

=ABS(DAYS(B2,A2))

E você pode ver os resultados na imagem abaixo: 

Como lidar com valores de data negativos no Excel

Use a função ABS() para lidar com valores negativos. Imagem do autor.

Tratamento de erros

Aqui estão os erros comuns de data do Excel que já enfrentei e como os corrigi.

  • Erro #VALUE!: Isso aconteceu quando meu sistema estava definido como mm/dd/yyyy para datas, mas minha fórmula estava usando dd/mm/yyyy. Corrigi o problema atualizando as datas na fórmula para que correspondessem ao formato do meu sistema.

  • #NUM! erro: Recebi esse erro ao usar a função DAYS(), e isso ocorreu porque uma das datas tinha um valor numérico fora do intervalo válido para datas. Para evitar isso, verifique se o valor está dentro do intervalo válido. 

  • #NAME? erro: Isso geralmente é um problema de erro de digitação (DATEIF() em vez de DATEDIF()). Para evitar esses problemas, verifique novamente a ortografia.

Combinação de funções

Às vezes, uma única função de data não é suficiente para tarefas complexas, então eu combino várias funções para criar uma fórmula dinâmica que lida com diferentes cenários.

Suponha que eu queira descobrir quantos dias letivos faltam para as provas. Para isso, uso NETWORKDAYS() para contar os dias úteis e adiciono IFERROR() para lidar com datas inválidas. Nesse caso, a fórmula seria semelhante a esta: 

=IFERROR(NETWORKDAYS(TODAY(), A2, $B$3:$B$4), "Check Dates")

Combine IFERROR com as funções NETWORKDAYS() e TODAY() para descobrir quantos dias faltam para os exames no Excel

Combine IFERROR() com NETWORKDAYS. Imagem do autor. 

Quando você pode precisar calcular dias entre datas no Excel

Vou compartilhar alguns exemplos reais de como usei recentemente essas funções em meus projetos.

Cálculo da idade 

Recebi uma lista de datas para calcular a idade dos indivíduos com base em suas datas de nascimento. Para isso, usei a função DATEDIF(). Você pode ver o conjunto de dados de amostra abaixo. Na célula B2, digito

=DATEDIF(A2,TODAY(),"Y")

Essa fórmula calcula o número de anos completos entre a data em A2 (data de nascimento) e a data de hoje.

Encontre a idade usando as funções IF() e TODAY() no Excel

Encontre a idade usando a função DATEDIF(). Imagem do autor.

Se eu precisar de detalhes mais específicos, como o total de meses ou dias, posso ajustar a fórmula da seguinte forma:

  • m para descobrir o número de meses desde o nascimento.

  • d para descobrir o número de dias.

Acompanhamento do cronograma do projeto

Também monitorei os dias úteis restantes para um projeto com a função NETWORKDAYS(). Para isso, inseri as datas de início e término nas células A2 e B2 e listei os feriados nas células C2:C5. Em seguida, para calcular os dias úteis do projeto, inseri a fórmula na célula D2:

=NETWORKDAYS(A2,B2,$C$3:$C$5)

Encontre os dias úteis restantes para o projeto usando as funções NETWORKDAYS() no Excel

Encontre os dias restantes para o projeto usando as funções NETWORKDAYS(). Imagem do autor.

Sempre que o cronograma do projeto era alterado, eu simplesmente atualizava as datas e a fórmula se ajustava automaticamente. Dessa forma, posso controlar facilmente os prazos.

Análise financeira

Certa vez, tive que acompanhar vários prazos de contratos. Por isso, configurei um sistema simples no Excel para facilitar a identificação de um prazo expirado ou ativo.

Simplesmente inseri esta fórmula na célula C2:

=IF(B2 < TODAY(), "Expired", "Active")

Isso rotulou cada contrato automaticamente com base no fato de sua data de expiração ter passado.

Eu até uso a formatação condicional para codificar por cores as células com base em seu status para maior clareza. Ativos são destacados em verde, enquanto os contratos Expirados são marcados em vermelho.

Para isso, selecionei New Rule (Nova regra ) em Conditional Formatting (Formatação condicional) e escolhi Use a formula to determine which cells to format (Usar uma fórmula para determinar quais células você deve formatar). Em seguida, inseri as fórmulas =B2="Expired" e =B2="Active" separadamente. Dessa forma, pude identificar quais contratos precisam de atenção.

verificar se o prazo do contrato está ativo ou expirado hoje ou não no Excel

Acompanhe o prazo do contrato. Imagem do autor.

Agora, tudo é atualizado por conta própria. As fórmulas se ajustam instantaneamente sempre que eu adiciono novos contratos ou atualizo as datas de vencimento.

Lacunas no reabastecimento de medicamentos

Você também pode calcular o intervalo entre as recargas de prescrição no Excel. Digamos que seus pais pegaram um suprimento de 30 dias de medicação em 1º de janeiro de 2025, mas hoje é 5 de fevereiro de 2025, e você está tentando descobrir quanto tempo eles ficaram sem medicação. 

No conjunto de dados abaixo, a célula A2 mostra quando o medicamento foi retirado pela última vez. Simplesmente subtraímos o dia de hoje dessa data e adicionamos 30. (Este é apenas um exemplo para que você possa praticar as funções do Excel e, em situações médicas, consulte seu médico).

=TODAY()-(A3+30)

Cálculo de intervalos de reabastecimento de medicamentos no Excel usando a função TODAY()

Encontre a última recarga de medicamento. Imagem do autor

Dessa forma, eu acompanhava facilmente o número de dias desde cada recarga e planejava a próxima sem nenhuma adivinhação.

Dicas e práticas recomendadas

Agora, aqui estão algumas dicas e práticas recomendadas para ajudar você ao longo do caminho:

  • Sempre me certifico de que as células de data estejam formatadas corretamente. Se não forem, o Excel pode não reconhecê-las como datas, o que pode atrapalhar os cálculos. Por isso, sempre verifico se as células estão definidas para adata da guia Home no formato do grupoName .

  • Mantenho minhas fórmulas simples e claras. Em vez de codificar datas como =DAYS("1/10/2025", "1/1/2025"), eu sempre uso referências de células como A2 e B2. Dessa forma, se eu precisar atualizar as datas, basta alterar os valores das células sem tocar na fórmula.

  • Ao usar a função TODAY(), sempre me certifico de que a célula esteja formatada como Número caso contrário, você verá uma mensagem #### ou uma data incorreta.

Considerações finais

Compartilhei algumas das melhores maneiras de trabalhar com datas no Excel, desde uma simples subtração até funções mais avançadas, como DAYS(), DATEDIF(), NETWORKDAYS() e TODAY().. Essas funções são ótimas para acompanhar cronogramas e gerenciar feriados.

A melhor maneira de você se sentir confortável com eles é praticando. Experimente-os em suas próprias planilhas e veja como eles podem simplificar seu trabalho. 

Se você estiver pronto para aprimorar ainda mais suas habilidades, recomendo que faça o curso Análise de dados no Excel , Preparação de dados no Excel e Visualização de dados no Excel . Esses cursos abrangem recursos e estratégias avançadas que podem tornar seu trabalho ainda mais eficiente. 

Avance em sua carreira com o Excel

Adquira as habilidades para maximizar o Excel - não é necessário ter experiência.

Comece hoje gratuitamente

Laiba Siddiqui's photo
Author
Laiba Siddiqui
LinkedIn
Twitter

Sou um estrategista de conteúdo que adora simplificar tópicos complexos. Ajudei empresas como Splunk, Hackernoon e Tiiny Host a criar conteúdo envolvente e informativo para seus públicos.

Perguntas frequentes

Como faço para calcular a diferença entre dois tempos em horas, minutos e segundos, ignorando as outras unidades?

Você pode usar essas fórmulas:

  • Horário: =HOUR(B2-A2)

  • Minutos: =MINUTE(B2-A2)

  • Segundos: =SECOND(B2-A2)

Observação: O resultado não excederá 24 horas ou 60 minutos/segundos.

Como faço para calcular o número de horas entre dois horários no Excel?

Para calcular as horas como decimal, use =(B2-A2)*24, e para obter horas completas, use =INT((B2-A2)*24).

Quais são os atalhos de teclado para você inserir rapidamente a data ou a hora atual no Excel?

Veja como você pode fazer isso:

  • Pressione Ctrl + ; para inserir a data atual.
  • Pressione Ctrl + Shift + ; para inserir a hora atual.

Como faço para calcular o número de semanas entre duas datas?

Para calcular o número de semanas entre duas datas, divida o número de dias por 7. Você pode usar a seguinte fórmula: = (End_Date - Start_Date) / 7.

Temas

Aprenda Excel com a DataCamp

curso

Introduction to Excel

4 hr
104.3K
Master the Excel basics and learn to use this spreadsheet tool to conduct impactful analysis.
Ver DetalhesRight Arrow
Iniciar curso
Ver maisRight Arrow
Relacionado

tutorial

FUNÇÃO SQL DATEDIFF()

DATEDIFF() é uma das funções de manipulação de dados de data mais usadas no SQL. Domine-o lendo este tutorial.
Travis Tang 's photo

Travis Tang

3 min

tutorial

As 15 fórmulas básicas do Excel que todos precisam saber

Aprenda a adicionar fórmulas aritméticas, de cadeia de caracteres, de séries temporais e complexas no Microsoft Excel.
Abid Ali Awan's photo

Abid Ali Awan

15 min

tutorial

Tutorial do Power BI Calculate

Aprenda a usar a função CALCULATE do Power BI e dê exemplos de como você pode usá-la.
Joleen Bothma's photo

Joleen Bothma

6 min

tutorial

Como fazer um VLOOKUP() com vários critérios

Domine a arte de usar VLOOKUP() com vários critérios no Excel. Explore técnicas avançadas, como colunas auxiliares e a função CHOOSE().
Laiba Siddiqui's photo

Laiba Siddiqui

10 min

tutorial

Como calcular o desvio padrão no Excel

Para calcular o desvio padrão no Excel, insira seus dados em um intervalo de células e use =STDEV.S() para dados de amostra ou =STDEV.P() para dados de população.
Arunn Thevapalan's photo

Arunn Thevapalan

10 min

tutorial

Como criar tabelas de datas no Power BI Tutorial

Saiba como criar tabelas de datas no Power BI com este tutorial visual passo a passo.
Kafaru Simileoluwa's photo

Kafaru Simileoluwa

12 min

Ver maisVer mais