Enviar un infor de access 2003 por e-mail preguntando

Te agradecería que si puedes me des la respuesta a esta pregunta. Mira, tengo en un formulario un botón que ejecuta una macro. Esta macro abre el informe y mediante el comando "enviar objeto" lo envío por e-mail. Hasta aquí todo bien. Desearía saber si entre la orden abrir informe y enviar objeto, se podía poner algún cuadro de dialogo, mensaje o comando, que me pregunte se realmente quiero enviarlo o no;algo así como "¿desea enviarlo? Si/no  y que yo pueda confirmar la orden o por el contrario anularla.
Respuesta
1
selecciona el form en modo edición. Clic derecho en el botón que envía el informe a un correo. Propiedades. En eventos te aparecerá ya uno "al hacer clic" selecciona o ábrelo. Te abrirá el editor de visual basic con las siguientes lineas de código. Son las que se ocupan de abrir y ejecutar la macro:
Private Sub Command0_Click()
On Error GoTo Err_Command0_Click
Dim stDocName As String
stDocName = "Macro1"
DoCmd.RunMacro stDocName
Exit_Command0_Click:
Exit Sub
Err_Command0_Click:
MsgBox Err.Description
Resume Exit_Command0_Click
End Sub


Debes agregar un msgbox para que te aparezca el alerta de autorización. Todo este código anterior estará dentro del si y en el no deberás agregar un msgbox para que te avise que el archivo no se envío. Por lo tanto debes hacer lo siguiente:
Private Sub Command0_Click()
On Error GoTo Err_Command0_Click
Dim stDocName, Mensaje As String
Mensaje = "¿Deseas enviar el archivo?"
If MsgBox(Mensaje, vbYesNo + vbQuestion, "Enviar archivo") = vbYes Then
stDocName = "Macro1"
DoCmd.RunMacro stDocName
Exit_Command0_Click:
Exit Sub
Err_Command0_Click:
MsgBox Err.Description
Resume Exit_Command0_Click
Else
MsgBox "El archivo no se envió", vbOKOnly + vbInformation, "Envío cancelado"
End If
End Sub
Agrega las partes resaltadas y ya debería funcionar.
Lo que hice fue crear un cuadro de mensajes con dos botones si y no. Al hacer clic sobre si, ejecuta la macro y al pulsar sobre no la cancela. Suerte.
Hola Grusso: Es un placer encontrarse con personas que están dispuestas a ayudar con su experiencia a los demás, por eso, acabo de recibir tu respuesta y no puedo por menos de darta las gracias, aún sin haberlo probado, pero creo que es lo menos que puedo hacer yo. Hace unos años que ando en esto de las bases de datos de Access y realizando algunas aplicaciones que me han resuelto bastantes problemas. En este caso es para un pequeño programa de gestión de tesorería y que mensualmente tengo que remitirlo por e-mail, lo hacia como indicaba, pero en algunas ocasiones detectaba algún error y ya no podía dar marcha atrás. No obstante, cuando lo pruebe ya te lo comunico. Muchas gracias por tu atención.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas