Como calcular a idade em anos?

2

No Excel 2010, estou usando a fórmula =(TODAY() - 05/31/1996) / 365.25 para calcular a idade em anos entre a data de hoje, 30 de maio de 2013 e 31 de maio de 1996. Espero algum número próximo a 17,00 , mas tenho 113.41 . Como faço para usar uma única fórmula para calcular a diferença em anos entre duas datas? Eu formatei meu celular como um número com precisão decimal 2.

Estou usando uma fórmula baseada nesse pergunta semelhante .

    
por zundarz 30.05.2013 / 23:59

4 respostas

3

Você precisa forçar a data como escrita em uma data real. Existem várias abordagens. Usando uma função DateValue () foi descrita. Outra maneira é esta:

=(TODAY()-("31/5/1996"+0))/365.25

Esta fórmula funciona para configurações regionais com datas representadas como DMY. Se suas configurações regionais usarem o MDY, tente

=(TODAY()-("5/31/1996"+0))/365.25

O texto da data será coagido em um número, adicionando-se um zero, e será processado posteriormente.

Naturalmente, você pode economizar muitos problemas se inserir a data em uma célula diferente e, em seguida, apenas indicar a fórmula para essa célula

Com o valor A1 de 31 de maio de 1996 (em qualquer formato que suas configurações regionais sirvam), você pode usar

=(TODAY()-A1)/365.25
    
por 31.05.2013 / 13:02
6

"How do I use a single formula to calculate the difference in years between two dates?"

Por causa da maneira exata como você formulou sua pergunta, acho que a fórmula DATEDIF será melhor para você. Tente usar a fórmula abaixo. É simples! Espero que isto ajude. :)

=DATEDIF("05/31/1996",TODAY(),"Y") ou =DATEDIF(A1,TODAY(),"Y")

"Y" faz a fórmula contar a diferença em anos.

    
por 05.09.2013 / 01:58
5

Isso funcionará: =(TODAY()-DATEVALUE("5/31/1996"))/365.25

Como será o seguinte: =(TODAY()-A1)/365.25 em que A1 contém um valor de dados do Excel.

    
por 31.05.2013 / 00:23
0

As respostas dadas por chuff e teylyn funcionam bem para cálculos científicos; por exemplo, a altura normal e o peso de uma pessoa de uma dada idade ou quanto tempo uma garrafa de vinho envelheceu. Isso pode ser bom o suficiente para você. Mas eles não são perfeitos para fins legais; por exemplo, em 31/05/2013, sua fórmula computou 16.99931554. É certo que isso será exibido como 17.00 se exibir dois dígitos decimais, mas será testado como sendo menor que 17. Não é bom se você estiver tentando calcular a idade de alguém no sentido normal, societal / legal, que usaríamos para determinar por exemplo, se ele tem idade suficiente para comprar aquela garrafa de vinho.

Por questões de brevidade, usarei a sugestão alternativa de que a data antiga está em A1 e que a data de hoje está em T1 . Eu sugiro que você use esta fórmula:

=(YEAR(T1)-YEAR(A1)) + (DATE(YEAR(A1),MONTH(T1),DAY(T1))-A1)/365.25

Isso calcula a diferença entre os dois anos e, em seguida, calcula a diferença do ano fracionário entre a data de início e a data atual espelhada no ano antigo . Por exemplo, Estou escrevendo isso em 12 de junho de 2013. A primeira parte da fórmula acima, YEAR(T1)-YEAR(A1) (os parênteses ao redor não são necessários) é 2013-1996 , que, é claro, é exatamente 17 . O segundo termo,

                       (DATE(YEAR(A1),MONTH(T1),DAY(T1))-A1)/365.25

torna-se (DATE(1996,6,12)-A1)/365.25 ou ("6/12/1996"-"5/31/1996")/365.25 ou 12/365.25 , que é 0.03012 , então a soma é 17.03012 . Mas se T1 for 5/31/2013 , a fórmula será avaliada como 17.00000 .

Oh, minha fórmula tem uma pequena falha. Se a data antiga estiver em um ano não bissexto (por exemplo, 31/5/1995) e o ano atual for bissexto (por exemplo, 2012), então T1 = 2/29/2012 e T1 = 3/1/2012 produzirá o mesmo resultado, porque, apesar de o Excel gerar um erro para 2/29/1995 , ele trata DATE(1995,2,29) como 3/1/1995 .

    
por 12.06.2013 / 03:25