Saltar al contenido

Ejecutar una sola vez una macro


Recommended Posts

publicado

Muy buenas tardes expertos.

Tengo una macro que se inicia al abrir el libro y si se dan ciertas condiciones, ejecuta otras macros. Una de estas macros, es enviar un correo y lo que busco es que con algún tipo de registro o algo, que el correo solo se pueda enviar una vez al dia.

He probado que al ejecutar la macro, quede reflejada la fecha y hora de la ejecución de la macro, con formato de dd/mm/yy hh:mm

Range("a4").Formula="=NOW()"[/CODE]

Decir también que con otra macro y formulas en celdas varias, el libro solo funciona en horario de 6:00 a 14:00 horas, cerrándose automáticamente si la hora esta fuera de ese horario.

Se agradece cualquier ayuda.

publicado

Puedes dedicar una celda para calcular la fecha sin decimales del registro creado, por ejemplo a5=entero(a4), esa fecha la podrias comparar con la fecha de hoy antes de enviar el correo.

Polaco

publicado

No te sigo Polaco.

Si comparo la celda resultante como me dices (11-1-14 0:00), como lo haria para que envie la primera vez y no las siguientes?

Si en A6 pongo hoy(), y comparo A5 con A6, siempre me va a salir falso, porque la hora no coincide.

publicado

Igualmente debes validar el entero de la celda a6 y comparar ambas fechas sin el decimal de las horas.

es una solucion bastante sucia pero creo deberia funcionar, me avisas si te sirvio

publicado

Coloca en una celda una fecha anterior a la de hoy, supongamos en A4:


If CDate(Range("A4")) < Date then
EnviarCorreo 'Tu macro de envíar el correo
Range("A4") = Date
End If
[/CODE]

publicado

Gracias Polaco y Macro Antonio.

Faltaba lo que ha apuntado Macro Antonio lo de poner la fecha anterior, así se ejecuta la primera vez, luego machaca la fecha y ya no se ejecuta. Excelente Macro Antonio. Y he hecho lo que decía Polaco, poner el formato de solo fecha, sin horas.

publicado
Y he hecho lo que decía Polaco, poner el formato de solo fecha, sin horas.

El formato de la fecha en la hoja es lo de menos, es mas, yo leo pondría la hora y así sabrías con exactitud cuando se realizó el envío.

La macro funcionará sea cual sea el formato de la celda.

publicado
El formato de la fecha en la hoja es lo de menos, es mas, yo leo pondría la hora y así sabrías con exactitud cuando se realizó el envío.

La macro funcionará sea cual sea el formato de la celda.

Tienes razón Macro Antonio, a mas datos, mas exactitud.

Muchas gracias por sacarme del embotellamiento en el que estaba.

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.

×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.