Macro Enviar correo en formulario

Tengo esté formulario, lo que hace es que que cuando pasan 8 días se activa una alarma en colo rojo (Cuadro rojo, si está correcto, se queda en verde)

Lo que quiero hacer es que cuando se active la alarma 1 en rojo(Primer recuerdo en color verde), esté mande un correo electrónico a una persona (o varías que se encuentren es esa situación con alarma encendida en rojo) que el asunto diga "No haz realizado tú pago" (No importa que no tenga Cuerpo de mensaje, sólo asunto) y que cuando se active la alarma número 2 en rojo(segundo recuadro en color verde) mandé un correo a la o las personas que no realizaron los pagos y que a la vez se le mande un correo al jefe de la "empresa" para dar por enterado de que dicha persona no ha pagado... Espero puedan ayudarme, si requieren del formulario para ver cómo está hecho lo puedo mandar por corre, de verdad me urge

1 respuesta

Respuesta
2

No me ha quedado claro lo de las alarmas pero en principio no tienes problemas, pero no uso macros. Supongamos que la tabla Origen del formulario se llama Clientes, y entre otros campos tienes Email, donde aparece su correo electrónico, un campo Fechavto, y una casilla tipo Si/No llamado Enviado.

En el evento Al abrir del formulario o mejor, en un botón de comando ponle

form.recordsource=select * from clientes where fechavto=date()-8 and enviado=-0"

Esto hará que en el formulario sólo te aparezcan aquellos registros de la tabla Clientes en que fechavto + 8 días sea igual al de hoy y que todavía no se le haya enviado el mensaje.

Para no complicarte más, podrías poner otro botón(no es necesario, pero como te digo para no complicarte, y ponerle

docmd.runsql"update clientes set Enviado=-1 where idcliente=forms!nombredelformulario!idcliente"

O sea, envía un mensaje a la dirección que aparece en el campo email y en el Asunto ponle lo de "me debes... y en el texto lo de "tomaré... Lo de true es por si quieres verlo antes de enviarlo, sino le pones false y ya está.

Si fueran muchos morosos, quizá te convendría crear un formulario continuo sin origen de datos, con por ejemplo, Idcliente, Email. Y en el formulario que ya tienes poner un botón y en el evento Al hacer clic poner

Docmd. Openform"nombre nuevo formulario"

En el evento Al abrir del nuevo formulario

form.recordsource=select * from clientes where fechavto=date()-8 and enviado=-0"

Y ponele, por ejemplo, un botón y en el evento Al hacer clic poner

dim i as integer

for i=1 to form.recordset.recordcount

DoCmd. SendObject, "", "", "me.email", "", "", """Me debes dinero, paga ahora""", "Tomare medidas", false, ""

Docmd. Gotorecord,, acnext

next

De todas formas, si quieres, mándame la base con un par de registros inventados(es por no escribir yo) y te pongo un ejemplo. Mi correo es [email protected] Si lo haces, en el asunto del mensaje pon tu alias Alex Ibarra, ya que si no sé quien me escribe ni los abro.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas