Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Como enviar un correo desde Acces

1,459 views
Skip to first unread message

Toni

unread,
Sep 17, 2012, 5:03:08 AM9/17/12
to
Buenos dias,

Quiero enviar un correo electrónico con datos de un formulario. Por Internet he encontrado este módulo que me parece bastante claro y suficiente:

Sub EnviarMensaje()

'Es necesario añadir la referencia Microsoft Outlook Library (herramientas/referencias)

Dim OutApp As Outlook.Application
Dim OutMail As Outlook.MailItem

Set OutApp = CreateObject("Outlook.Application")
Set OutMail = OutApp.CreateItem(olMailItem)

With OutMail
.To = "cor...@dominio.com"
.Subject = "Asunto del mensaje"
.Body = "Texto del mensaje" & Forms!ActForm!NumExp

'Se pueden adjuntar ficheros
'.Attachments.Add ("C:\Mi_Fichero.pdf")

.Send 'también .Display lo enseña
End With

Set OutMail = Nothing
Set OutApp = Nothing

End Sub

Cuando intento ejecutarlo, el puntero se para en la 1ra linea de definición de variables, y muestra el error: "No se ha definido el tipo definido por el usuario". Des de la ayuda veo que deberia definir alguna variable, y ahí me pierdo.

Qué debo hacer?

Gracias de antemano.

Toni

unread,
Sep 17, 2012, 5:22:39 AM9/17/12
to
Olvidé comentar que he intentado añadir la referencia LibraryBiblioteca de objetos de Microsoft Outlook 8.0 (tengo Acces 2007), pero no la he encontrado en Herramientas de VB.

Gracias.

Toni

unread,
Sep 19, 2012, 7:30:34 AM9/19/12
to
Buenos dias,

Podrian echarme una mano con esta duda? Por mucho que me entretengo, no consigo dar con la solución.

Gracias.
Toni


On Monday, September 17, 2012 11:22:39 AM UTC+2, Toni wrote:
> Olvidé comentar que he intentado añadir la referencia LibraryBiblioteca de objetos de Microsoft Outlook 8.0 (tengo Acces 2007), pero no la he encontrado en Herramientas de VB.
> >

Emilio

unread,
Sep 19, 2012, 12:24:16 PM9/19/12
to
--------------------------------------------------------------------------
�Importante!: Colabora con el grupo.Contesta a este mensaje y dinos si te
sirvi� o no la respuesta dada. Muchas gracias
--------------------------------------------------------------------------
Hola!

si la referencia no aparece lo mas probable es que se deba a que no est�
instalado Outlook en el ordenador, �Lo est�?

Saludos a todos desde Huelva

Emilio [MS-MVP Access 2006/11]
http://www.mvp-access.com/foro
http://www.mvp-access.es/emilio

Emilio

unread,
Sep 19, 2012, 1:11:59 PM9/19/12
to
--------------------------------------------------------------------------
�Importante!: Colabora con el grupo.Contesta a este mensaje y dinos si te
sirvi� o no la respuesta dada. Muchas gracias
--------------------------------------------------------------------------
Hola!
se me olvidaba a�adir que si est� instalado y no aparece la referencia yo
reparar�a la instalaci�n de Office.

Toni

unread,
Sep 20, 2012, 3:18:29 AM9/20/12
to
Outlook està instalado, sí, pero a lo mejor Acces no lo detecta.

On Wednesday, September 19, 2012 7:11:57 PM UTC+2, Emilio wrote:
> --------------------------------------------------------------------------
>
> ¡Importante!: Colabora con el grupo.Contesta a este mensaje y dinos si te
>
> sirvió o no la respuesta dada. Muchas gracias
>
> --------------------------------------------------------------------------
>
> Hola!
>
> se me olvidaba añadir que si está instalado y no aparece la referencia yo
>
> repararía la instalación de Office.

José Mª Fueyo

unread,
Sep 20, 2012, 4:24:32 AM9/20/12
to
Hola
¿Que versión de Outlook y que versión de Access utilizas?

Salu2
--
José Mª Fueyo
[MS MVP Access]

Toni

unread,
Sep 21, 2012, 3:17:11 AM9/21/12
to
Acces i Outlook 2007
A

José Mª Fueyo

unread,
Sep 21, 2012, 7:01:24 AM9/21/12
to
Hola de nuevo
Sí abres la ventana de referencias, ¿encuentras el modelo de objetos de Outlook? yo tengo en la oficina Office 2003. En éste caso, la referencia que me aparece es "Microsoft Outlook 11.0 Object Library". En tu caso, debería ser (como mínimo, ya te digo que aquí no puedo comprobarlo) Outlook 12.

Toni

unread,
Sep 21, 2012, 9:29:31 AM9/21/12
to
Buenas, José Mª

Entiendo que te refieres a la ventana de Herramientas>Referencias que se encuentra en VB (por cierto, como puedo acceder a la ventana de VB sin tener que pasar por el diseño de algun objeto?)

En las referencias disponibles tengo marcadas 'Visual Basic for Applications', 'Microsoft Access 12.0 Object Library', 'OLE Automation' y 'Microsoft Office 12.0 Access database engine Object Library'

La única que veo que tiene alguna referencia a Outlook es la que está etiquetada como 'Microsoft Office Outlook View Control', que no tengo marcada.

Buen fin de semana!
Toni

Emilio

unread,
Sep 21, 2012, 12:01:44 PM9/21/12
to
--------------------------------------------------------------------------
�Importante!: Colabora con el grupo.Contesta a este mensaje y dinos si te
sirvi� o no la respuesta dada. Muchas gracias
--------------------------------------------------------------------------
Hola!

como te dije si tienes instalado Outlook �el de Office? y no aparece entre
las referencias deber�s reparar o reinstalarlo. Otra cosa es que uses el
antiguo Hotmail, que ahora llaman Outlook, en cuyo caso no tendr�s nada que
hacer por este camino.

José Mª Fueyo

unread,
Sep 21, 2012, 7:17:27 PM9/21/12
to
Hola
Aparte de lo que te comenta Emilio, deberías comprobar que tipo de instalación tienes, no vaya a ser que te falta algún componentes.
Además, deberías tener en cuenta los problemas que puedes tener debido a la protección contra virus que automaticen el envío de correo (http://www.outlookcode.com/article.aspx?id=52). ¿Necesitas usar Outlook, o puedes saltarte el usar un cliente de correo?

Toni

unread,
Sep 24, 2012, 3:20:49 AM9/24/12
to
Buenos días,

Quiero efectuar notificaciones a usuarios, en función de eventos automàticos(tiempos para la caducidad de un proceso), o de eventos producidos por otros usuarios.

Ahora mismo lo hago con una tabla de incidencias, pero me obliga a que todos los integrantes del proceso deban abrir la aplicación para verlas, cuando muchos de ellos tan solo recibiendo un aviso o notificación podrían hacer su parte, sin tener que ser necesariamente usuarios de Acces (trabajos de campo, por ejemplo, que aportan datos al personal de administración, quien los entra en el programa).

José Mª Fueyo

unread,
Sep 24, 2012, 3:42:29 AM9/24/12
to
Hola
¿Verificaste la instalación por sí falta algo?
Otra cosa, ¿viste el tema que te puse en el link anterior? por qué te va a dar muchos problemas. Y recuerda que, aparte, para enviar un correo a través de Outlook, éste tiene que estar abierto. Y te aseguro que no siempre los usuarios lo tienen abierto...

Toni

unread,
Sep 24, 2012, 7:28:42 AM9/24/12
to
Sí, me he fijado que es un tema complejo. Seguiremos como estábamos.

Gracias

José Mª Fueyo

unread,
Sep 24, 2012, 11:17:03 AM9/24/12
to
Hola
Depende. Puedes realizar el envío de correo sin usar Outlook. En el mismo link, se explican varias opciones.
Yo hice algunas pruebas con éste ActiveX y me gustó bastante
http://www.ostrosoft.com/OSSMTP6.asp

Espero te sirva todo esto.

jhonchrisad

unread,
Feb 13, 2024, 9:47:35 PMFeb 13
to
Buen día. Tenia el mismo problema a lo que la referencia que te pide se encuntra en c:\Program Files (x86)\Microsoft Office\OFFICE11\MSOUTL.OCX - Me funciono tu codigo sin ningun problema
0 new messages