I have a list containing dates of birth going from cell A1 to cell A1765 and need to calculate the ages.
So far I have a row of formulas B1 to B1765 subtracting the dates of birth from todays date. Then I have a row of formulas from C1 to C1765 dividing the number of days by 365 with the cells formatted to show no decimal places to give the number of years.
I now need to calculate the months and years so for example the age of someone born on 01/12/1980 would be 31 years 2 months and 19 days
I am thinking of taking the results from column C multiplying them by 365 then subtracting them from the total number of days then dividing by 30 for number of months but this is getting complicated and it doesnt account for months that have more or less than 30 days.
asked Feb 20 '12 at 05:51
Wow Abby, that is quite a convoluted way of doing this and like Beyond_Life says it wont be accurate.
The =DATEDIF(birthdate,date,"Y") formula will calculate the years but you will also need to use =DATEDIF(birthdate,date,"YM") to calculate the months and =DATEDIF(birthdate,date,"MD") to calculate the days.
you can use each formula in a separate column 1 for years 1 for months and 1 for days or you can combine all three into a single column with the text Years Months Days after each figure.
You say that your list range is from A1 to A1765 so copy and paste the following formula into cell B1 and then copy it down to cell B1765.
=DATEDIF(A2,TODAY(),"Y") & " Years, " & DATEDIF(A2,TODAY(),"YM") & " Months, " & DATEDIF(A2,TODAY(),"MD") & " Days"
This will work out all the ages to years, months and days and will only take up 1 column
I was to fast with my previous comment. Try this:
To calculate the age of a person on date since their birthdate: =INT((date-birthdate)/365.25)
To figure their age as of today, date can be replaced with a function like TODAY() or NOW(). The INT() function is used to return only the number of complete years.
To calculate age in terms of years, months, and days, DATEDIF is a handy function. The following formula is similar to the one above. =DATEDIF(birthdate,date,"y")
answered Feb 20 '12 at 06:59
Simon, I like your formula but why would you use your references to $Z$1 rather than "today()" throughout the formula?
answered Feb 20 '12 at 09:07