Hola.
Yo utilizo esta función que encontré por el foro:
Código Delphi
[-]function CalcularEdad(Fecha: TDateTime):String; var A, AA, M, MM, D, DD: Word;
Anio, Mes, Dia: double;
begin
DecodeDate(Fecha, A, M, D);
DecodeDate(Date, AA, MM, DD);
Anio := Int(AA - A);
if( M <= MM ) then
Mes := MM - M
else
begin
Mes := MM+12-M;
Anio := Anio -1;
end;
if( D <= DD ) then
Dia := DD - D
else
begin
Dia:=DD+MonthDays[IsLeapYear(AA),MM]-D;
Mes := Mes -1;
end;
if Mes < 0 then
begin
Anio := Anio - 1;
Mes := 12 + Mes;
end;
Result := Format('Años: %.0f, Meses: %.0f, Días: %.0f', [Anio, Mes, Dia]);
end;
Por si sirve. Un saludo.