How to Calculate Age in Excel from ID Number (4 Quick Methods)

Let’s consider the following dataset (in B4:C14) with people’s Names and their ID Numbers. The first 6 digits in ID Numbers represent the date of birth in the format yy-mm-dd. Excel doesn’t offer any built-in functions to calculate age from a number. However, we can combine a few functions to convert the date of birth to age.

Dataset 1


Method 1 – Calculate the Age from the ID (Two Versions)

Case 1.1 – Calculate the Age from the ID with the MID Function

Steps:

  • Add a Date of Birth column and insert this formula in the first cell:

=MID(C5,5,2)&"/"&MID(C5,3,2)&"/"&MID(C5,1,2)

Here, the C5 cell represents the ID Number (text argument), and the next two numbers represent the start_num and num_chars arguments respectively. The MID function extracts the first 6 digits from the ID Number text.

How to Calculate Age in Excel from ID Number Using MID Function

  • Insert a Current Date column and use the TODAY function, which returns the present date:

=TODAY()

Using TODAY Function

  • Calculate the Age in years by calculating the difference between the two dates and dividing by 365 days (copy the formula below). The INT function rounds the Age to the nearest whole number.

=INT((E5-D5)/365)

How to Calculate Age in Excel from ID Number Using MID Function


Case 1.2 – Using the DATE Function to Extract the Age from the ID 

Steps:

  • Add a Date of Birth column and insert this formula in the first cell:

=DATE(LEFT(C5,2),MID(C5,3,2),MID(C5,5,2))

Here, the C5 cell represents the ID Number (text argument).

Using DATE Function

  • Add a Current Date column and apply the TODAY function which returns the present date:

=TODAY()

Using TODAY Function

  • Calculate the Age in years by calculating the difference between the two dates and dividing by 365 days. Use the following formula:

=INT((E5-D5)/365)

How to Calculate Age in Excel from ID Number Using DATE Function

Read More: Metabolic Age Calculator in Excel


Method 2 – Compute the Age from the ID Number Directly

Case 2.1 – Calculate the Age Using DATEDIF and IF Functions 

  • Copy the following formula into the first result cell (D5), press Enter, and AutoFill for the other results.

=DATEDIF(DATE(IF(LEFT(C5,2)>TEXT(TODAY(),"YY"),"19"&LEFT(C5,2),"20"&LEFT(C5,2)MID(C5,3,2),MID(C5,5,2)),TODAY(),"y")

How to Calculate Age in Excel from ID Number Using DATEDIF and IF Function

Formula Breakdown

  • The MID function obtains the first 6 numbers from the ID Number in the C5 cell.
  • The IF function checks whether the year is less than or greater than the current year.
  • The DATEDIF function subtracts the birth year from the present year and returns the Age.

Case 2.2 – Calculate the Age with DATEDIF and DATE Functions 

Use this simplified formula:

=DATEDIF(DATE(MID(C5,1,2),MID(C5,3,2),MID(C5,5,2)),TODAY(),"y")

How to Calculate Age in Excel from ID Number Using DATEDIF and DATE Function

In this expression, the C5 cell represents the ID Number (text argument), while, the two following numbers refer to the start_num and num_chars arguments respectively.

Formula Breakdown

  • Initially, the DATE function takes in 3 arguments (year, month, day) which are provided by the MID function.
  • Finally, the DATEDIF function returns the Age.

Method 3 – Convert an ID Number to Age with Data Tools

Steps

  • Add a column (D5:D14) titled Date of Birth and copy and paste all ID Numbers in that column.
  • Select all the cells in the column and click the Text to Columns button in the Data ribbon.

Using Data Tools

  • A Convert Text to Columns Wizard appears.
  • Select Fixed width since all ID Numbers have the same number of digits.
  • Press Next.

Using Data Tools

  • Click just after the 6th digit from the left side, as depicted in the image below.
  • Press Next.

Using Data Tools

  • Select the Date format from the drop-down and press Finish to close the dialog box.

Using Data Tools

  • Add a column named Current Date (E5:E14) and enter the TODAY function to get the present date:

How to Calculate Age in Excel from ID Number Using Data Tools

  • Make another column for Age (F5:F14) and compute the difference between the two dates by copying the following function and auto-filling for other cells in the column.

=INT((E5-D5)/365)

How to Calculate Age in Excel from ID Number Using Data Tools

Read More: How to Calculate Retirement Age in Excel


Method 4 – Using VBA Code

  • Add a Date of Birth column and insert this formula:

=MID(C5,5,2)&"/"&MID(C5,3,2)&"/"&MID(C5,1,2)

How to Calculate Age in Excel from ID Number Using VBA Code

  • Go to the Developer tab and select Visual Basic.

Using VBA Code

  • Insert a Module where you’ll paste the VBA code.

Using VBA Code

  • Copy the code below and paste it into the window:
Public Function calculate_age(birth_date As Date, Optional result_index As Integer = 0) As Variant
    today_day = Day(Date)
    today_month = Month(Date)
    today_year = Year(Date)
    birth_date_day = Day(birth_date)
    birth_date_month = Month(birth_date)
    birth_date_year = Year(birth_date)
    If birth_date_month < today_month Then
        age = today_year - birth_date_year
    ElseIf birth_date_month = today_month Then
        If birth_date_day <= today_day Then
            age = today_year - birth_date_year
        Else
            age = today_year - birth_date_year - 1
        End If
    Else
        age = today_year - birth_date_year - 1
    End If
    Dim output_array(25) As Variant
    output_array(0) = age
    output_array(1) = Date
    output_array(2) = today_day
    output_array(3) = today_month
    output_array(4) = today_year
    output_array(5) = birth_date_day
    output_array(6) = birth_date_month
    output_array(7) = birth_date_year
    calculate_age = output_array(result_index)
End Function

How to Calculate Age in Excel from ID Number Using VBA Code

  • Close the VBA window and return to your worksheet.
  • Type an Equal sign followed by the calculate_age function and enter a cell reference (D5) containing the date of birth to get the age.

How to Calculate Age in Excel from ID Number Using VBA Code


Download Practice Workbook


Related Articles


<< Go Back to Calculate Age | Date-Time in Excel | Learn Excel

Get FREE Advanced Excel Exercises with Solutions!
Eshrak Kader
Eshrak Kader

Eshrak Kader is a dedicated professional with a BSc. Degree in Naval Architecture and Marine Engineering from Bangladesh University of Engineering and Technology. He boasts a rich background in Microsoft Office Suite, and over the past year, he has authored over 120 insightful articles for the ExcelDemy. Currently, Eshrak leads a team of 5 in the ExcelDemy Video project and enjoys problem-solving and making videos on Excel. Eshrak’s passion for continuous learning underscores his commitment to excellence in... Read Full Bio

2 Comments
  1. HI. WHAT IF THE ID NUMBER IS STARTED WITH 00 OR 01, PERSO THAT BORN AFTER YEAR 2000?

    • Hello RAY,
      Thank you for your question. The Exceldemy team has created an Excel file with the solution to your question. Please provide your email address here, we will send it to you in no time.

      Otherwise, you can just follow the steps below.

      Suppose we want to use the MID Function as shown in Method 1. Now, we want to determine the age of a person whose ID Number starts with 00 (which refers to the Year 2000) but that person was born after the Year 2000.

      Step: 1
      • Firstly, let’s consider Mary with the ID Number to be ‘0005255800012.
      • As a note, Excel removes any leading zeros from numbers so we have inserted an apostrophe comma to store the ID Number as text.

      Step: 2
      • Secondly, let’s assume Mary was born in the Year 2003.
      • Now, on the Date of Birth column insert the formula given below.
      =MID(C14,5,2)&"/"&MID(C14,3,2)&"/"&"0"&MID(C14,1,2)+3

      • You should see the result as 25/05/03.

      Step: 3
      • Next, AutoFill the Current Date and Age columns.
      • The value of Age should be 19 years.

      Similarly, we have also included a second example for Julian with the ID Number ‘0108295800012 but he was born in the Year 2006.

      Please feel free to provide any further feedback.

Leave a reply

Advanced Excel Exercises with Solutions PDF

 

 

ExcelDemy
Logo