Como calcular a idade no Excel usando fórmulas

Neste artigo veja como calcular a idade no Excel usando fórmulas.

1. INTRODUÇÃO

O cálculo de idade no Excel é um cálculo que envolve algumas particularidades a depender do método escolhido. Vamos abordar 3 possibilidades empregando fórmulas: a função FRAÇÃOANO, a função DATADIF e a divisão da diferença entre as datas por 365, 25.

O objetivo é mostrar os resultados dos cálculos nas mesmas situações para os 3 métodos. IMPORTANTE: para cálculo de idade, espera-se que um ano completo ocorra apenas quando a data se repita (dia e mês) em anos futuros.

Aqui, não falamos no fechamento de um ciclo, como de 01/01/2000 a 31/01/2000, o que pode gerar interpretações diversas. Esta parte é discutível quando se fala em diferença entre datas, mas não pode ser considerada para cálculo de idade. Isto é discutido melhor na última seção deste artigo.

2. Calcular idade com a função fraçãoano

Esta função FRAÇÃOANO retorna a fração do ano que representa o número de dias inteiros entre duas datas (inicial e final). A imagem a seguir exibe a sua sintaxe:

O primeiro argumento é a data_inicial. Ela é obrigatória e no nosso caso representa a data de nascimento. Este dado pode ser oriundo de uma célula onde o valor está registrado como uma constante ou pode ser o resultado de uma fórmula (podendo empregar a função DATA, DATAM, alguma outra função etc.). O segundo argumento é a data_final. Ela é também obrigatória e representa a data atual para tomarmos como base e calcular a idade. Para automatizar esta data podemos usar a função HOJE, que não possui argumentos e retorna a data atual com base na data do sistema (computador). Caso não desejemos usar a data de hoje, podemos usar uma data para servir como base de comparação e assim ter a diferença entre as datas. O terceiro argumento é optativo e representa o tipo de base de contagem diária a ser usado. A imagem a seguir representa a aplicação da função FRAÇÃOANO para calcular algumas idades.

Como calcular idade no Excel

A data atual foi inserida em C5 e ficou congelada na fórmula, que foi inserida em C8 e arrastada para baixo. A fórmula empregada foi =INT(FRAÇÃOANO(B8;$C$5)). Usamos a função INT para obter apenas a parte inteira do resultado provido pela função FRAÇÃOANO. Para a segunda data de nascimento, por exemplo, o resultado de FRAÇAOANO é 25,12 e, como desejamos apenas anos completos, usamos a função INT, retornando 25.

3. Função Datadif para calcular idade no Excel

A função DATADIF não é exibida no catálogo de funções do Excel. Ao tentarmos digitar a função em uma célula para enxergarmos a sua sintaxe, ela não será exibida.

Segundo a própria Microsoft, o Excel fornece a função DATADIF para dar suporte a pastas de trabalho mais antigas do Lotus 1-2-3. Ainda segundo a Microsoft, a função DATADIF pode calcular resultados incorretos em determinadas situações e cita que isso pode ocorrer quando utilizamos o terceiro argumento como “MD”, o que não será nosso caso.

Embora a função não é exibida no catálogo durante a digitação da fórmula, podemos prosseguir com a digitação normalmente e preencher os seus 3 argumentos para calcular a idade. Todos eles são obrigatórios.

Seu primeiro argumento é a data_início, que, assim como na função FRAÇÃOANO, representa em nosso contexto a data de nascimento. O segundo argumento é a data_final que pode representar a data de hoje ou uma data para servir como base comparativa. O último argumento poderá ser um conjunto de unidades de comparação, visto que DATADIF pode calcular diferenças entre datas e retornar os resultados em anos, meses e dias. No nosso caso este argumento será “y” pois desejamos o número completo de anos no período (o “y” vem de year, que é ano na tradução para o Português). A imagem a seguir representa o mesmo cenário da imagem anterior onde aplicamos a função FRAÇÃOANO. Note que temos resultados idênticos.

4. Dividir por 365,25 a diferença entre as datas

Podemos ainda dividir a diferença entre as datas por 365,25 para calcular a idade. O excedente em relação a 365 é 0,25 que representa 1/4 ou 25% de um ano. Esta é uma tentativa de compensar os anos bissextos. Leia com atenção o item 5 deste artigo para entender os riscos desta consideração. A imagem a seguir mostra o mesmo cenário abordado com FRAÇÃOANO e DATADIF onde nota-se rigorosamente os mesmos resultados.

Aqui também usamos a função INT para obter apenas a parte inteira. No último exemplo, a divisão retorna aproximadamente 39,69 cuja parte inteira é 39 (resultado de toda a fórmula após INT retornar apensa a parte inteira).

5. Análise Crítica Comparativa entre os Métodos

Ao que parece ser, DATADIF é a opção mais viável para o cálculo de idade. Com as outras soluções apresentadas devemos tomar cuidado. De acordo com os dados, as soluções podem apresentar resultados divergentes entre si, ocasionando eventuais erros, ao menos de interpretação.

a) “Problemas” com a função FRAÇÃOANO

A função FRAÇÃOANO pode apresentar interpretação divergente (não vamos classificar como erro) caso a data inicial seja no dia 01 de janeiro e a data final seja em 31 de dezembro. Neste cenário ela já considera um ano completo. Perceba que para os dois primeiros casos não se completou ainda um ano de idade, embora já se complete um ciclo com todos os dias do ano. Veja na imagem a seguir as comparações.

Alguém que nasceu no dia 01 de janeiro só completa mais um ano de idade numa nova data que seja 01 de janeiro. Com FRAÇÃOANO, o ano se completa já no dia 31 de dezembro porque ela verifica que já se completou um ciclo (um dia antes da data correta de aniversário). Em todos os exemplos da imagem, FRAÇÃOANO retorna um ano a mais do que o esperado se levarmos em consideração o cálculo de idade. Uma forma de contornar isto poderia ser o emprego da função SE. Neste caso, verificaríamos se ocorre 01 de janeiro na data inicial, bem como 31 de dezembro na data final. O tratamento seria subtrair 1 ao resultado de FRAÇÃOANO. Veja na imagem a seguir o tratamento. Veja a seguir como poderia ser o tratamento.

b) Problemas com a divisão por 365,25

A solução em que dividimos a diferença entre as datas por 365,25 como tentativa de contornar anos bissextos pode apresentar falhas e deve ser evitada. Veja na imagem a seguir erros de cálculos.

Note que nos exemplos sempre a fórmula resulta em erro de cálculo com um ano a menos do que o resultado esperado. Nem todo ano múltiplo de 4 é bissexto. Anos que são múltiplos de 100 só serão bissextos caso sejam também múltiplos de 400. Desta forma, os anos 1900, 2100, 2200 e 2300, por exemplo, não são bissextos. Fica evidente que dividir a diferença entre datas por 365,25 pode gerar erros pois não há proporcionalidade exata diariamente.

Download Planilha de Calcular Idade no Excel

Realize o download da planilha para calcular idade no Excel neste botão abaixo. Basta se inscrever na nossa newsletter gratuita para o download automático.

Baixe a planilha

Curso Excel Completo – Do Básico ao VBA

Quer aprender Excel do Básico, passando pela Avançado e chegando no VBA? Clique na imagem abaixo:


Jardiel Euflázio

Administrador, MOS e MOSE em MS Excel, Jardiel é também MCT e desenvolvedor de soluções baseadas na ferramenta. Apaixonado pelo Excel desde cedo, é criador de conteúdo em seu canal de vídeos aberto ao público no YouTube (Jardiel Euflázio - Excel Prime), no qual trata sobre o tema sempre disposto a colaborar com a comunidade.

Excel não precisa ser complicado

Assine nossa newsletter e receba dicas práticas para dominar o excel