Cómo calcular la edad (en años) de una persona a partir de su fecha de nacimiento en Microsoft Access 2016 (válido para otras versiones de Access como Access 2013 o incluso inferiores como Access 2010). Realizaremos el cálculo en un campo de una consulta, obteniendo el dato de la fecha de nacimiento de una tabla. Mostramos también cómo crear una consulta y ejecutarla.

Tabla con campo de fecha de nacimiento en Access

Tendremos una tabla con, al menos, la fecha de nacimiento de cada persona. En el ejemplo que usaremos crearemos una tabla llamada «personas» con los campos:

  • id: de tipo autonumeración (autoincremento) y clave primaria.
  • nif: de tipo texto corto.
  • nombre: de tipo texto corto.
  • fecha_nacimiento: de tipo Fecha/Hora con formato de Fecha corta. Este será el campo que usemos para calcular la edad.
  • direccion: de tipo texto corto.
Tabla con campo de fecha de nacimiento en Access

Crear consulta en Access con campo calculado que obtiene la edad en años a partir de una fecha de nacimiento

Crearemos una consulta en la base de datos Access y añadiremos la tabla «personas» a dicha consulta. Para ello pulsaremos en «CREAR» [1] y en «Diseño de consulta» [2]:

Crear consulta en Access con campo calculado que obtiene la edad en años a partir de una fecha de nacimiento

Agregaremos la tabla «personas» a la consulta. Para ello la seleccionaremos y pulsaremos «Agregar». A continuación pulsaremos «Cerrar» para cerrar la ventana de agregar tablas y consultas.

Crear consulta en Access con campo calculado que obtiene la edad en años a partir de una fecha de nacimiento

Añadiremos los campos de la tabla «personas» a la consulta que queramos mostrar. Podremos hacerlo o bien con doble clic sobre cada campo (se pasarán abajo de forma automática), o bien arrastrándolos y soltándolos abajo:

Crear consulta en Access con campo calculado que obtiene la edad en años a partir de una fecha de nacimiento

Añadiremos ahora el campo que calculará la edad a partir de la fecha de nacimiento. Este campo es calculado, por lo que lo introduciremos «a mano», con la siguiente fórmula:

Edad: Fix((Fecha()-[fecha_nacimiento])/365,24)

Quedando como un campo más de la consulta:

Crear consulta en Access con campo calculado que obtiene la edad en años a partir de una fecha de nacimiento

En el campo calculado anterior usamos:

  • Fix(): función que devuelve solo la parte entera de un número.
  • Fecha(): función que obtiene la fecha actual del equipo.
  • Restamos la fecha actual del equipo menos la fecha de nacimiento de la persona. En este caso se obtienen un número de días.
  • Dividimos el número de días anterior entre 365,24. El 0,24 decimal se usa para los años bisiestos. Hay que tener precaución con el separador de decimales que se usen en el equipo. Si se usa un punto, se cambiará la coma por el punto.
  • Y con el Fix, como hemos comentado, obtenemos solo la parte decimal de lo que salga en la división anterior.

Guardaremos la consulta pulsando en el botón «Guardar»:

Crear consulta en Access con campo calculado que obtiene la edad en años a partir de una fecha de nacimiento

Al ser la primera vez nos solicitará el nombre para la consulta, por ejemplo «ct_personas_edad»:

Crear consulta en Access con campo calculado que obtiene la edad en años a partir de una fecha de nacimiento

Si queremos comprobar el SQL que ejecuta en la consulta, será suficiente con pulsar en «Ver» y en «Vista SQL»:

Crear consulta en Access con campo calculado que obtiene la edad en años a partir de una fecha de nacimiento

Nos mostrará el SQL de la consulta, que también es modificacble:

Crear consulta en Access con campo calculado que obtiene la edad en años a partir de una fecha de nacimiento

El SQL que genera la consulta:

Probando la consulta que muestra la edad a partir de la fecha de nacimiento en Microsoft Access

Para probar la consulta y el campo calculado de edad, añadiremos unos cuantos registros de prueba a la tabla personas:

Probando la consulta que muestra la edad a partir de la fecha de nacimiento en Microsoft Access

Una vez añadidos los datos en la tabla, ejecutaremos la consulta para comprobar que obtiene correctamente la edad de cada persona. Para ello, desde «Consultas», pulsaremos con el botón derecho del ratón sobre nuestra consulta ct_personas_edad y elegiremos «Abrir»:

Probando la consulta que muestra la edad a partir de la fecha de nacimiento en Microsoft Access

Se abrirá la consulta y mostrará los datos, entre ellos, la edad en años de cada persona:

Probando la consulta que muestra la edad a partir de la fecha de nacimiento en Microsoft Access