Você tenta subtrair uma data de outra no Excel, mas obtém o erro #NUM! em vez do número esperado de dias. Esse erro ocorre quando o Excel não consegue realizar o cálculo devido a um formato de data inválido ou a um cálculo que resulta em uma data negativa. Este artigo explica por que o erro #NUM! aparece durante a subtração de datas e fornece os métodos corretos para calcular diferenças entre datas.
Principais Conclusões: Corrigindo o Erro #NUM! em Cálculos com Datas
- Verifique a formatação das células para datas: Certifique-se de que ambas as células estejam formatadas como uma data válida do Excel, e não como texto ou número geral.
- Use a função DATEDIF: Calcule a diferença entre duas datas em dias, meses ou anos sem subtração direta.
- Aplique a função DATEVALUE: Converta texto que parece uma data em um número serial adequado que o Excel possa calcular.
Por que o Excel Mostra #NUM! ao Subtrair Datas
O Excel armazena datas como números seriais sequenciais, onde 1º de janeiro de 1900 é o número 1. Quando você subtrai uma data de outra, o Excel calcula a diferença entre esses dois números. O erro #NUM! aparece quando um dos valores no cálculo não é um número de data válido. A causa mais comum é uma célula contendo texto que parece uma data, como “2024-13-01” para um mês inexistente. O Excel não consegue converter esse texto em um número serial, então a subtração falha.
Outra causa frequente é tentar subtrair uma data posterior de uma data anterior usando certas funções. Por exemplo, a função legada DATEDIF retorna #NUM! se a data inicial for posterior à data final. O erro também pode aparecer se uma célula estiver formatada como texto, impedindo o Excel de reconhecer uma data digitada corretamente. Entender essas causas raiz é o primeiro passo para corrigir o cálculo.
Passos para Calcular Corretamente as Diferenças entre Datas
Siga estes métodos para resolver o erro #NUM! e obter um resultado preciso para o número de dias, meses ou anos entre duas datas.
Método 1: Verificar e Corrigir os Formatos de Data
- Selecione as células de data
Clique na célula que você acredita conter a data inicial. Em seguida, observe a caixa Formato de Número na guia Página Inicial da faixa de opções. - Verifique o formato da célula
O formato deve ser um tipo de data como *14/03/2012, 14-Mar ou Data Longa. Se aparecer “Texto” ou “Geral”, a entrada pode não ser uma data verdadeira. - Redigite a data ou altere o formato
Se a célula estiver formatada como Texto, primeiro altere para um formato de Data. Em seguida, redigite a data ou pressione F2 e Enter para convertê-la. - Use a função DATEVALUE para datas em texto
Se sua data estiver armazenada como texto, como “14 de março de 2024”, use =DATEVALUE(“14 de março de 2024”) em uma nova célula para convertê-la em um número serial que você possa usar nos cálculos.
Método 2: Usar a Função DATEDIF
- Entenda a sintaxe do DATEDIF
A fórmula é =DATEDIF(data_inicial, data_final, “unidade”). A unidade é um código entre aspas que define o tipo de retorno, como “D” para dias. - Insira a fórmula para dias
Em uma nova célula, digite =DATEDIF(A2, B2, “D”), onde A2 é a data inicial e B2 é a data final. Isso retorna o número de dias completos entre elas. - Use outros códigos de intervalo
Substitua “D” por “M” para meses completos ou “Y” para anos completos. Use “MD” para encontrar dias ignorando meses e anos, mas observe que esse argumento pode às vezes dar resultados inesperados. - Certifique-se de que a data inicial seja anterior
A função DATEDIF retornará um erro #NUM! se a data_inicial for posterior à data_final. Troque as referências de célula se necessário.
Método 3: Subtração Simples com a Função DATE
- Construa datas válidas com a função DATE
Para evitar erros de digitação, construa datas usando =DATE(ano, mês, dia). Por exemplo, =DATE(2024, 3, 14) sempre cria uma data válida. - Subtraia os resultados da função DATE
Em uma célula, insira uma fórmula como =DATE(2024,12,31) – DATE(2024,1,1). Isso subtrai diretamente os números seriais e exibe a diferença em dias. - Referencie células contendo funções DATE
Coloque =DATE(2024,1,1) na célula C2 e =DATE(2024,12,31) na célula D2. Em seguida, em E2, use a fórmula =D2 – C2 para calcular a diferença.
Se Você Ainda Obtiver o Erro #NUM! Após a Formatação
Às vezes, o erro #NUM! persiste mesmo após verificar os formatos das células. Esses cenários específicos exigem correções direcionadas.
A Célula Contém uma Data Fora do Intervalo Válido do Excel
O Excel para Windows suporta datas de 1º de janeiro de 1900 a 31 de dezembro de 9999. Se sua data for anterior a 1900, ela pode estar armazenada como texto. Você não pode calcular diferenças com ela usando subtração padrão. Uma alternativa é manter ambas as datas como texto e usar uma fórmula para extrair ano, mês e dia, mas isso é complexo. Para dados históricos, considere calcular as diferenças manualmente ou usar um software especializado.
Usando DATEDIF com a Unidade “MD” ou “YM”
Os argumentos “MD” (dias ignorando meses/anos) e “YM” (meses ignorando dias/anos) do DATEDIF são conhecidos por às vezes retornar resultados incorretos ou um erro #NUM! com certas combinações de datas, como datas de fim de mês. A Microsoft observa que esses argumentos podem fornecer valores inesperados. É melhor evitar “MD” e “YM”. Calcule o total de dias e depois derive os meses e dias restantes usando outras fórmulas.
Referência Circular ou Interferência de Função Volátil
Uma causa menos comum é se sua fórmula de subtração de data se referir indiretamente à própria célula, criando uma referência circular. O Excel pode mostrar um erro #NUM!. Verifique referências circulares em Fórmulas > Verificação de Erros > Referências Circulares. Além disso, algumas funções voláteis como TODAY() ou NOW() são atualizadas constantemente. Se sua fórmula for =TODAY() – A1 e a célula A1 depender de alguma forma do resultado da fórmula, isso pode causar um erro.
Métodos de Subtração de Datas: Principais Diferenças
| Item | Subtração Simples (A2-B2) | Função DATEDIF |
|---|---|---|
| Uso Principal | Calcular diferença em dias | Calcular diferença em dias, meses ou anos |
| Resultado com Data Inválida | Erro #VALOR! ou #NUM! | Erro #NUM! |
| Lida com Intervalo de Tempo Negativo | Retorna um número negativo | Retorna erro #NUM! |
| Facilidade de Uso | Fórmula simples e direta | Requer argumento de unidade específico |
| Disponibilidade da Função | Aritmética básica | Função legada, não no Assistente de Função |
Agora você pode identificar por que o erro #NUM! aparece ao subtrair datas e aplicar a correção adequada. Use verificações de formatação de célula e a função DATEVALUE para garantir que o Excel reconheça seus dados como datas verdadeiras. Para cálculos confiáveis em diferentes unidades, a função DATEDIF é a ferramenta padrão, embora a subtração simples funcione perfeitamente para encontrar o número de dias entre duas datas válidas. Para análise avançada de datas, explore a função NETWORKDAYS para calcular dias úteis excluindo fins de semana.