DATEDIF
Calcula a diferença entre duas datas em anos, meses ou dias. Uma função não documentada, mas útil.
DATEDIF(data_inicial; data_final; unidade)Argumentos
data_inicialA data mais antigadata_finalA data mais recenteunidade"Y"=anos, "M"=meses, "D"=dias, "YM"=meses excluindo anos, "MD"=dias excluindo meses
=DATEDIF(A1;HOJE();"Y")Anos completos entre as datas
=DATEDIF(A1;B1;"M")Meses completos entre as datas
=DATEDIF(A1;B1;"Y")&" anos, "&DATEDIF(A1;B1;"YM")&" meses"Cria uma string de idade
- •Não aparece no assistente de funções, mas funciona
- •A data inicial deve ser anterior à data final
- •Use para calcular idades
- •Não perceber que DATEDIF não está documentada na lista oficial de funções do Excel (não aparece no preenchimento automático), o que faz algumas pessoas assumirem que não existe ou não é fiável - funciona perfeitamente, apenas não está oficialmente listada
- •Usar a unidade "MD" à espera de um resultado fiável de diferença em dias ignorando os meses - a própria documentação da Microsoft avisa que esta unidade específica pode devolver resultados inesperados em casos extremos
- •Colocar as datas na ordem errada - DATEDIF exige a data mais antiga primeiro e a mais recente em segundo lugar, e inverter essa ordem devolve um erro #NÚM!
FRACÇÃOANOCalcula a diferença entre duas datas como uma fração de um ano, um ângulo diferente sobre diferenças de datas.HOJEFrequentemente usada como argumento de data final numa fórmula DATEDIF que calcula idade ou antiguidade.DATAMMove uma data para a frente ou para trás por meses, a operação inversa de medir uma diferença de meses com DATEDIF.Por que razão DATEDIF não aparece quando começo a escrevê-la numa célula?
É uma função não documentada que a Microsoft nunca adicionou ao preenchimento automático nem à lista oficial de funções do Excel, mesmo funcionando corretamente. Basta escrevê-la manualmente.
O que acontece se eu colocar a data final antes da data inicial?
DATEDIF devolve um erro #NÚM! - o primeiro argumento de data tem de ser anterior ou igual ao segundo.
Qual é a forma mais segura de calcular a idade de alguém com DATEDIF?
Use a unidade "Y": DATEDIF(data_nascimento;HOJE();"Y") dá o número de anos completos, a forma padrão de calcular a idade.
Precisa traduzir uma fórmula usando DATEDIF?
Use nosso tradutor para converter sua fórmula completa
