Ir al contenido principal

funciones: calcular el cumpleaños mas cercano a la fecha actual

Alicia (en este link) me consulta lo que adelanto en el título de esta entrada: la forma en la que puede hacer que Excel le avise cual es el cumpleaños mas cercano a la fecha actual.
El tema parece sencillo, pero presenta sus inconvenientes. Como primer medida, uno imagina efectuar una simple resta de fechas y listo, solucionado.... pero no es tan "así". Supongamos que tenemos la siguiente tabla, en donde almacenamos las fechas de nacimiento de cada integrante de la "parentella":
en B2 colocamos la fecha actual, con la funcion =HOY()

[+/-] Ver el resto / Ocultar

Comentarios

  1. Por Dios... yo no sé si vale tanto Excel como el empeño que pusiste en esta página, brother. la verrdad que este blog está espectacular. ¡Suerte!

    ResponderEliminar
  2. los dias de cada cumpleaños están en la columna C. lo que realiza este ejercicio es avisar cual de todos esos cumpleaños es el mas cercano a la fecha actual, a modo de recordatorio.
    si necesitas alguna explicación extra avisame que lo solucionamos enseguida.
    gracias x tu mensaje

    ResponderEliminar
  3. a ver si me podes ayudar en algo q necesito…

    Tengo una hoja con columna nombre y columna Fecha de nacimiento

    Tengo otra hoja con columna enero, febrero, marzo, abril, mayo, junio, julio ……etc hasta diciembre

    Que necesito?

    Que en ésta segunda hoja me aparezca debajo de cada mes el día y nombre de la persona q cumple años…
    Debe ser dinámico porque se van agregando nombres a la hoja 1…
    Y la hoja 2 se suele imprimir para una cartelera..

    Me podras ayudar???

    Muchaaaasss Gracias!

    Matias

    ResponderEliminar
  4. muy buena consulta, Matías. Te comento que a esto lo podemos solucionar de dos formas: con y sin macros. La primera de ellas incluye la utilización de varias funciones, y es la que estoy elaborando para mi ejemplo.
    luego, si esto no te alcanza, hacemos uno con macros, que es mucho mas sencillo.
    en poco te posteo el link con el ejemplo.
    gracias x tu mensaje.

    ResponderEliminar
  5. te paso el link a la entrada que levanté con tu consulta, sobre como acomodar automáticamente los nombres de las personas, en función a la fecha en la cual cumplen años.
    al final... lo hice con macros. cualquier duda me avisas. un abrazo y gracias por tu mensaje.
    http://damianexcel.blogspot.com/2011/03/acomodar-datos-segun-el-mes-de-una.html

    ResponderEliminar
  6. como se haria si es que mas de una persona cumple años, como se haria para mostrar a todas las personas que cumplen años??

    ResponderEliminar
  7. Lima Peru: estimo que la solución vendría de la mano de las funciones matriciales. Dejame que vea bien la solución y levanto una entrada con tu consulta, que viene de primera para mi blog.
    Desde ya que con macros seria muy sencillo, cosa que agregare en el futuro post sobre el tema.
    Gracias x tu mensaje, en breve veras las novedades.

    ResponderEliminar
  8. o quizás no algo tan complicado como insertar funciones matriciales o macros... si en la columna E ponés una simple funcion que verifique si la diferencia en días es 0... que ponga el nombre de la persona. Sería algo como esto:
    =SI(D5=0;B5;"")
    o sea: si la diferencia de días es 0 (cero), lo que me avisa del cumpleaños, coloca en D5 el nombre de la persona, caso contrario no coloca nada (""). Luego con los formatos condicionales, tal como lo detallo en la entrada, podrías resaltar la lista. ¿te sirve así o necesitas un reporte mas elaborado que te avise?

    ResponderEliminar
  9. Interesante nota, porque te dice que te faltan 164 dias o parecido, pero si yo quiero convertir esos dias largos en meses y dias, como haria??? Quisiera que me diga, te faltan 3 meses y 5 dias para tu cumpleaños. Como haria?

    ResponderEliminar
  10. Sadavil: date una vuelta por esta entrada:
    http://damianexcel.blogspot.com/2010/02/diferencia-entre-fechas-con-sifecha-que.html

    habla sobre una función no documentada en Excel, ni siquiera en la ayuda: =SIFECHA().
    te permite averiguar los intervalos entre fechas, especificando años, meses y días.
    cualquier ayuda que necesites me avisas.
    gracias x tus palabras.

    ResponderEliminar
  11. hola que tal, mira tengo una base de datos con fecha de nacimiento, y quiero mostrar el nombre del que cumple años en ese dia actual, como le hago para que me aparesca el nombre de la persona que cumple años en el dia actual?

    ResponderEliminar
  12. decime: ¿varias personas pueden cumplir años el mismo día o tenes a un solo cumpleañero por fecha? y: ¿donde necesitarías que se muestre esa fecha (un mensaje, en una celda, etc, etc)
    contestame esa dos cosas y empezamos.

    ResponderEliminar
  13. Amigo, mis saludos!!!
    Recurro a tu ayuda para ver si me puedes ayudar. Primero decirte que no conozco mucho de PCs, software, etc. así que soy demasiado novato.

    Ya leí todos los post y la verdad que no entiendo que hacer para poder tener avisos que me digan que falta tantos meses y días para el cumpleaños de tal persona; que me digan(por ejemplo) en letra roja que falta 7, 6, 5, 4,3, 2, 1 días y otra que me diga: “Hoy cumpleaños fulano, sultano y mengano” , “cumple X años”.

    Al igual que otras personas que ya comentaron también tengo una columna con nombre y otra con fecha de nacimiento, a las cuales se añadirían más personas, y que me salga estos avisos en otra hoja por meses.

    Espero puedas ayudarme con un archivo Excel o plantilla Excel, disculpa mi ignorancia. GRACIAS!

    ResponderEliminar
  14. Luis: no comprendo mucho tu consulta, ya que este post está dedicado casualmente a eso: indicar la cantidad de días restantes para la fecha de un cumpleaños. Si la diferencias es 0, entonces ese día es el esperado.
    por ejemplo:
    =si(D5=0;"hoy es el cumpleaños";"")
    ¿que otra cosa deseas agregarle?

    ResponderEliminar
  15. Muchas gracias por tu interés de ayudarme:
    1. Que diga faltan tantos dias para su cumpleaños.
    2. "hoy cumpleaños (nombre)".
    3. que salgan en otra hoja por meses separados.
    4. Que se puedan añadir más nombres con sus fechas de nacimiento y pasen automáticamente a la otra hoja que está por meses en donde anuncia los días faltantes o el cumpleaños.
    5. Por favor haz una plantilla.
    GRACIAS!!!

    ResponderEliminar
  16. Con funciones se tornaría algo realmente pesado y complicado... dame tiempo para armar algo con macros y te aviso.

    ResponderEliminar
  17. Sinceramente, muy agradecido!!!

    ResponderEliminar
  18. Muy buen artículo, me devanaba los sesos con el tema de los años de nacimiento y el del día de hoy. Me fuiste de mucha ayuda, muchas gracias!

    ResponderEliminar

Publicar un comentario

Entradas populares de este blog

funciones: convertir numeros a letras con excel

En realidad hace tiempo que vienen consultándome sobre esto... quizás cinco o seis años . Debe ser una de las funciones mas buscadas de Excel, por lejos: la posibilidad de escribir: 1.534,63 y que en una celda aparezca magicamente "un mil quinientos treinta y cuatro c/15/100". Aquí les dejo una solución, basada en funciones , sin utilizar macros, la cual preparé exclusivamente para este Blog. A pesar de los millones de usuarios que requieren esta herramienta, no viene incorporada en Excel, debemos armarla nosotros mismos .  Luego de la imagen irá la explicación de como llegué a lograr esto, dado que es un proceso medianamente complejo , que utiliza tres o cuatro funciones básicas y requiere de varios pasos. así quedará nuestra planilla y siempre devolverá en letras el valor que ingresemos en A1 [+/-] Ver el resto / Ocultar Desde ya aclaro: esta no es " la forma " de hacerlo, simplemente es una mas, evitando el uso de macros. Sobre esta base, comencemos: 1) El núme

macros: como enviar mails desde Excel (vba)

Un gran amigo "on-line", Johan Moreno, de Colombia , me hizo llegar la inquietud de cómo enviar mails desde Excel . Si bien contaba con algunas líneas de código sobre el particular, decidí retomar mi ejemplo y adaptarlo mejor a las circunstancias. Hace unos minutos termino de remitirle un correo con la solución a Johan... desde Excel y con un archivo adjunto, mismo que transcribo a continuación para ayudar a todos con esta tarea. Veamos primero las dos formas principales de enviar mails: mediante Outlook o nuestro Web Mail ( yahoo, gmail, hotmail, etc, etc ) No soy usuario de Outlook en lo absoluto: no confío en los agujeros de seguridad que continuamente aparecen y, por otro lado, t eniendo a mi alcance una herramienta tan poderosa (y gratuita) como Gmail, la cual ahora también permite sincronizar los mensaje con la Pc para verlos offline (deben activarlo en "google labs") ... no creo que me haga usuario ni hoy ni mañana. Igualmente mas adelante daré una solució

buscarv con varios resultados

Es de las preguntas mas recurrentes que he tenido: ¿se puede lograr que la función BUSCARV() devuelva varios resultados? Si recordamos el uso de esta función, sabremos que la misma buscar en valor en el rango especificado, retornando un solo resultado. Si en la tabla tenermos varios registros iguales BUSCARV() solo nos devolverá el primero de ellos, omitiendo el resto. Entonces ¿se puede? Bueno, aplicando otra técnica sencilla que se me ocurrió al intentar solucionar el planteamiento de un lector... si, puedo hacerlo.... pero sin usar BUSCARV(). la idea es que coloquemos en E1 el código del producto a buscar y a partir de E2 nos devuelva todas las coincidencias de la tabla. [+/-] Ver el resto / Ocultar Vamos a necesitar una columna "auxiliar" para llevar a buen término este proyecto. Con macros el tema sería mas sencillo, pero aquí la cuestión es resolverlo con las funciones de Excel, sin VBA. Paso a paso: Como primer medida chequeamos que valores de la columna A coincide co