Calcula o número de dias, meses ou anos entre duas datas.
Aviso
- o Excel fornece a função DATADIF para suportar livros mais antigos do Lotus 1-2-3. A função DATADIF poderá calcular resultados incorretos em determinados cenários. Consulte a secção de problemas conhecidos deste artigo para obter mais detalhes.
- Sugestão: Se quiser encontrar o número de dias entre duas datas, basta subtrair a data posterior da data anterior. Isto funciona porque as datas são armazenadas como números no Excel.
Sintaxe
DATADIF(data_inicial,data_final,unidade)
| Argumento | Descrição |
|---|---|
|
data_inicial Obrigatório |
Uma data que representa a primeira ou a data de início de um determinado período. As datas podem ser introduzidas como cadeias de texto entre aspas (por exemplo, "30/1/2001"), como números de série (por exemplo, 36921, que representa o dia 30 de janeiro e 2001 se estiver a utilizar o sistema de datas 1900) ou como resultados de outras fórmulas ou funções (por exemplo, DATA.VALOR("30/1/2001")). |
|
end_date Obrigatório |
Uma data que representa a última data ou a data final do período de tempo. |
| Unidade | O tipo de informação que pretende que sejam devolvidas, em que:Unidade****Devolve"Y"O número de anos completos no período.". M"O número de meses completos no período." D"O número de dias no período." MD: a diferença entre os dias em start_date e end_date. Os meses e os anos das datas são ignorados. Importante: Não recomendamos a utilização do argumento "MD", uma vez que existem limitações conhecidas com o mesmo. Veja a secção de problemas conhecidos abaixo." YM"A diferença entre os meses em start_date e end_date. Os dias e anos das datas são ignorados"YD"A diferença entre os dias de start_date e end_date. Os anos das datas são ignorados. |
Observações
- As datas são armazenadas como números de série sequenciais, para que possam ser utilizadas em cálculos. Por predefinição, 1 de janeiro de 1900 é o número de série 1 e 1 de janeiro de 2008 é o número de série 39448, porque corresponde a 39.447 dias depois de 1 de janeiro de 1900.
- A função DATADIF é útil em fórmulas nas quais tem de calcular uma idade.
- Se a start_date for maior do que a end_date, o resultado será #NUM!.
Exemplos
| Data_inicial | Data_final | Fórmula | Descrição (Resultado) |
|---|---|---|---|
| 1/1/2001 | 1/1/2003 | =DATADIF(Data_inicial,Data_final,"A") | Dois anos completos no período de tempo (2) |
| 1/6/2001 | 15/8/2002 | =DATADIF(Data_inicial,Data_final,"D") | 440 dias entre 1 de junho de 2001 e 15 de agosto de 2002 (440) |
| 1/6/2001 | 15/8/2002 | =DATADIF(Data_inicial,Data_final,"AD") | 75 dias entre 1 de junho e 15 de agosto, ignorando os anos das datas (75) |
Problemas conhecidos
O argumento "MD" poderá resultar num número negativo, um zero ou um resultado impreciso. Se estiver a tentar calcular os dias restantes após o último mês concluído, eis uma solução:
Esta fórmula subtrai o primeiro dia do mês final (01/05/2016) da data de fim original na célula E17 (06/05/2016). Eis como: Primeiro, a função DATA cria a data 01/05/2016. É criada ao utilizar o ano na célula E17 e o mês na célula E17. Em seguida, o 1 representa o primeiro dia desse mês. O resultado da função DATA é 01/05/2016. Em seguida, subtraímos esse resultado da data final original na célula E17, que é 06/05/2016. 06/05/2016 menos 01/05/2016 é 5 dias.
Precisa de mais ajuda?
Pode sempre perguntar a um especialista na Comunidade Tecnológica do Excel ou obter suporte nas Comunidades.