Access - Enviar un email desde access

   
Vista:

Enviar un email desde access

Publicado por pumi (5 intervenciones) el 02/03/2013 08:31:12
Hola a todos.

Tengo hecho un botón en un formulario de access para que haciendo clic en él se envíe un correo electrónico usando el Microsoft outlook adjuntando un pdf que genero desde un report.

Lo que quiero es que me mande el correo sin que se me abra el mensaje para modificarlo, para eso uso la siguiente instrucción:

DoCmd.SendObject acSendReport, MiReport, "pdf", , MiDireccionEmail, , MiAsunto, MiMensaje, False, ""

Yo pensaba que con el "false" no se me abría la ventana del mensaje, pero se me abre siempre y yo lo que quiero es evitar esa ventana y que el email se envíe directamente. Además, hay que enviar el mismo email a mucha gente y como es personalizado para cada uno no me vale poner sus direcciones en cco, si no que he de generar un correo para cada uno mediante un bucle, por lo que actualmente se me abre una ventana para el primer destinatario, cuando lo envío, se me abre la ventana para el segundo y así con todos.
Además, cuando no tengo abierto el outlook y le doy a enviar, se me queda colgado el access.

A ver si me podéis echar una mano, por favor.

Muchas gracias desde ya.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Enviar un email desde access

Publicado por pumi (5 intervenciones) el 02/03/2013 21:11:47
Hola de nuevo:

He encontrado esto en otro foro.

http://www.forosdelweb.com/f90/access-enviar-mail-con-outlook-desde-access-716697/

La solución parece que funciona, lo que ocurre es que me funciona algunas veces pero después, de repente, me empieza a dar este error:

Se ha producido el error '429' en tiempo de ejecución.
El componente ActiveX no puede crear el objeto.

Este error me da en la línea siguiente del código:

Set OutApp = CreateObject("Outlook.Application")

¿Cómo es posible que funcione las primeras veces de usar el código y después de usarlo 3 o 4 veces me de éste error?, me estoy volviendo loco y no tengo ni idea de por donde tirar.

Gracias de nuevo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Enviar un email desde access

Publicado por deneg_nhj (349 intervenciones) el 03/03/2013 03:40:30
Muy probablemente estás creando la variable de OutLook por cada correo.

Set OutApp = CreateObject("Outlook.Application")

Te sugiero revisar el código y adecuarlo, de manera que solo hagas una sola vez está asignación.

Te pongo un seudocodigo para darte una idea.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Sub enviaCorro
 
'Crea variables
Set OutApp = CreateObject("Outlook.Application")
.
.
.
 
Inicia While rsTabla.eof
  Crea correo
  Envia correo
 
Termina While
 
 
Set OutApp = Nothing
 
end sub
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Norberto

Enviar un email desde access

Publicado por Norberto (432 intervenciones) el 04/03/2013 09:39:04
Hola.

Al hilo de este tema:

Yo también he usado este sistema para enviar correo (en principio nunca ha sido masivo) desde Accees 2003 y siempre me sale un cuadro de diálogo en el que tengo que esperar 5 segundos para decirle que sí que quiero enviar el correo. Hasta ahora no me ha molestado porque como ya he mencionado, no envío correos de forma masiva, pero con el tiempo...

¿Hay alguna forma de quitarlo?

Un saludo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Enviar un email desde access

Publicado por T O N Y navarro.stotac@gmail.com (36 intervenciones) el 29/10/2014 21:06:28
Hola Pumi: he leido tu consulta y de verdad que me interesa mucho, dado que yo debo programar una aplicacion igual, que me han pedido, en primer lugar, me podrias decir como has hecho que te genere un pdf a partir de un boton en un formulario? y en segundo luga, lo del email ya que seria el punto final de todo esto, hasta el moemto estoy siguiendo con las intrucciones que te han dado.-
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar