por xpelos » 09 Jun 2006 07:00
Estimados colegas.
Redundando en la respuesta del maestro Galileogali, hace tiempo tuve que hacer "hablar" a Excel acerca de la edad de personas, desde su nacimiento hasta la fecha actual, sin poner días.
El "macro-churro" que me salió es más largo que el de ahora, pero funciona bastante bien.
En nuestro caso, A2 contiene un número de días a sumar/restar, y en mi fórmula, ese dato era "HOY()".
Ahí va:
=SI(SIFECHA($A$1-$A$2;$A$1;"y")>=1;SIFECHA($A$1-$A$2;$A$1;"y")&SI(SIFECHA($A$1-$A$2;$A$1;"y")>1;" años ";" año ")&REDONDEAR(RESIDUO(SIFECHA($A$1-$A$2;$A$1;"m");12);0)&" meses y "&SIFECHA($A$1-$A$2;$A$1;"md")&" dias";REDONDEAR(RESIDUO(SIFECHA($A$1-$A$2;$A$1;"m");12);0)&" meses y "&SIFECHA($A$1-$A$2;$A$1;"md")&" dias")
pero para dar pistas, ya va bien... para el que le guste "pedalear" fórmulas.
En otro caso parecido, usé una combinación similar funcionó con "FRAC.AÑO", del tipo:
"FRAC.AÑO(A1;HOY();1)", con el "pedaleo" consabido, y resultados semejantes. Por ejemplo, el cálculo de meses:
=SI(ENTERO(RESIDUO(FRAC.AÑO(A1;HOY();1);1)*12)=1;CONCATENAR(ENTERO(RESIDUO(FRAC.AÑO(A1;HOY();1);1)*12);" mes");CONCATENAR(ENTERO(RESIDUO(FRAC.AÑO(A1;HOY();1);1)*12);" meses"))
En fin. Lo mío debe ser el ciclismo...