Calcular la edad con Excel

Calcular la edad con Excel puede llegar a ser un poco complicado porque los cálculos no solo dependen del año sino también del día actual. La solución se complica cuando te das cuenta que es necesario considerar los años bisiestos.

En esta ocasión presentaré tres maneras diferentes de calcular la edad con Excel. Todas las fórmulas asumen que la celda A2 contiene la fecha nacimiento y que la celda B2 tiene la fecha actual que es calculada por la función HOY.

Calcular la edad con Excel

Calcular la edad dividiendo los días

El primer método obtiene la diferencia en días entre ambas fechas y el resultado lo divide entre 365.25. Este último número es porque cada cuatro años tenemos un año con 366 días (bisiesto) por lo que 365.25 es el promedio de los cuatro años. La función ENTERO eliminará los decimales del resultado.

Calcular la edad con Excel dividiendo los días

La desventaja de este método es que no es muy exacto y tiene problemas serios cuando intentas calcular la edad con Excel de niños. Por ejemplo, para un niño que tenga exactamente 1 año de edad cumplido obtendremos el resultado 0 (cero) por haber realizado la división entre 365.25.

Calcular la edad con la función FRAC.AÑO

La función FRAC.AÑO devuelve la fracción de un año a partir del número total de días que existen entre dos fechas. Observa el resultado:

Calcular la edad con Excel utilizando la función FRAC.AÑO

De igual manera he utilizado la función ENTERO para remover los decimales del resultado.

Calcular la edad con la función SIFECHA

La función SIFECHA es el método más exacto para calcular la edad con Excel. Para obtener los años de diferencia entre dos fechas utilizamos el argumento “y” en la función:

Calcular la edad con Excel utilizando la función SIFECHA

Así que solamente elige el método que te parezca más adecuado para calcular la edad con Excel e impleméntalo.

Artículos relacionados
Calcular el tiempo transcurrido entre dos fechas

32 comentarios en “Calcular la edad con Excel

  1. Pep

    Me daba error y al final cambié por ; y funcionó.
    Tambien he substituido una celda por HOY().

    =SIFECHA(C4;HOY();”y”)

    Muchas gracias

    Pep

    1. Moises Autor

      Hola Pep, esta diferencia se debe a la configuración regional de Windows. Si tienes la configuración de España, entonces las funciones de Excel utilizan el punto y coma (;), en México utilizamos la coma (,). Para más información sobre este tema puedes leer el siguiente artículo: http://exceltotal.com/separador-de-argumentos-de-funciones-en-excel/

  2. Luz Maria Condori Vilchez

    gracias me sacaste de un gran apuro

  3. Gabriela Flores

    Muchas gracias, me sirvio mucho la info.

  4. katerine

    Mil gracias,, que buena formula me sirvió bastantisimooo.

  5. José Fuentes

    Hey muchas gracias me sacaste de una grande, vale gracias, ahora ya se como hacer esa función.

    1. luis

      Gracias!!!

  6. Carina

    Muy buena la información, fue muy útil.

  7. FRANK

    todas las formulas se resumen a A-B (FECHA DE NACIMIENTO-FECHA ACTUAL=EDAD), PERO yo necesito calcular la edad con los meses incluidos es decir: si mi FN es el 07/02/1972 en tonces hoy (22/04/2013) debo tener una edad de 41, 2 = 41 años y 2 meses. espero me puedas ayudar. mil gracias.

    1. Moisés Ortíz Autor

      Hola Frank, te sugiero obtener la diferencia en meses y después hacer la división entre 12 para obtener los años y el residuo serán los meses. Te recomiendo hacer uso de la función SIFECHA:
      http://exceltotal.com/calcular-el-tiempo-transcurrido/

  8. camila

    Gracias me sirvió de mucho la información para calcular la edad en Excel.

  9. Vicente

    Si el campo donde va la fecha de nacimiento lo dejo en blanco, en la casilla donde se calcula la edad aparece 113 ya que calcula desde el año 1900. ¿que puedo hacer para que si no pongo fecha de nacimiento la casilla de la edad ponga cero o nada?. Gracias de antemano y un saludo.

    1. Moisés Ortíz Autor

      Hola Vicente, utiliza la función SI para comparar el valor de la casilla con “” para saber si está vacía, por ejemplo:
      =SI(A4=””,””,SIFECHA(A4,B4,”y”))

  10. Zave

    Hola, vengo preguntando por algo que no aparece en este tutorial… Me preguntaba si ud, podría decirme como hacer que por ejemplo
    En la celda A1 haya una edad, y en la celda A2, dependiendo de esa edad me diga si es mayor o menor de edad.
    No lo encontré por tus apuntes ni nada… Si me es tan amable de decirme, se lo agradecería.
    Un saludo.

    1. Moisés Ortíz Autor

      Hola Zave, utiliza la siguiente fórmula:
      =SI(SIFECHA(A1,HOY(),”y”) > 18, “Mayor de edad”, “Menor de edad”)

  11. Hector Villatoro

    Muy buena aportación!!! Gracias por eso

  12. Manuel

    Tengo Excel en ingles. ¿Tengo que poner las fechas en formato ingles y la fórmula en vez de SIFECHA poner IFDATE?.
    He probado todas las combinaciones y no me funciona.
    Gracias

    1. Moisés Ortíz Autor

      Hola Manuel, debes utilizar las fechas en formato inglés (mm/dd/yyyy) y utilizar la función DATEDIF que es la equivalencia de la función SIFECHA en inglés.

  13. pilar

    como saber en que dia cayo una fecha anterior a 1899?

    1. Moisés Ortíz Autor

      Hola Pilar, no puedes utilizar Excel para ese tipo de cálculos ya que la fecha mínima en la herramienta es 01/01/1900.

  14. Guillermo Fernandez

    Hola se ve mucho mas facil el Excel, genial es una gran ayuda,felicidades

  15. JOAQUIN

    Yo tambien necesito calcular edades de personas con fecha de nacimiento anterior a 1900. como puedo hacerlo. Gracias.

    1. Moisés Ortíz Autor

      Hola Joaquin, eso no es posible con el sistema de fechas de Excel.

  16. ANGASA

    ES UNA PAGINA QUE ME HA SIDO DE UTILIDAD CON EL SIMPLE HECHO DE BUSCAR MI PREGUNTA Y LA RESPUESTA UNA GRAN APORTACION A LOS QUE TENGAMOS DUDAS SOBRE ESTE PROGRAMA EXCEL FELICIDADES A SU CREADOR

  17. erika

    como hago para hallar la edad si solo tengo el año de nacimiento

    1. Moisés Ortíz Autor

      Hola Erika, puedes hacer una resta entre el año actual y el año de nacimiento. Suponiendo que el año lo tienes en la celda A1 puedes utilizar la siguiente fórmula:
      =AÑO(HOY()) – A1

  18. luis carlos puerta

    MUCHAS GRACIAS ME SIRVIÓ MUCHO

  19. alberto

    Hola excelente tu explicación… estoy realizando un cuadro con referente a este tema y me gustaría saber si puedo ver la edad mas los días ejemplo: cuando ves las estadísticas de un jugador de fútbol te aparece (23 años y 40 días) se puede realizar en excel? o que te diga también cuantos días falta para que cumpla los 24? gracias de antemano

  20. Ricardo

    Hola Moises como hago para calcular la edad si el año ingresado es solo los 2 ultimos digitos del año? pues eso sirve bien hasta 1999 pero cuando quiero sacar los años de 2000 para adelante me sale error ejemplo si la persona nacio el 22/11/1981 pero como datos solo tengo 22/11/81?

    1. Moisés Ortíz Autor

      Hola Ricardo, primero debo decir que las fórmulas funcionan correctamente para años superiores a 2000. Otra cosa que debo aclarar es que TODAS las fechas en Excel tienen los 4 dígitos del año, pero en ocasiones solo se muestran los últimos dos dígitos debido al formato personalizado aplicado a la celda. Pero no creo que ese sea tu caso porque aún así las fórmulas funcionarían correctamente. Lo que sospecho es que estás trabajando con texto y por eso las fórmulas devuelven error, así que tendrás que convertir de texto a fecha para que todo funcione correctamente.

  21. ALFREDO MACEDO

    MUY BUENO, LES RECOMIENDO EL ULTIMO =SIFECHA(B2,HOY(),”Y”), ES EL MÁS PRÁCTICO.GRACIAS