En la base de datos que manejo ya pege la informacion que
me enviaron.
Y tengo problemas todavia. ya no tengo ninguna clase de
error al compilar. el programa lo pege en un modulo y este
lo corro atravez de un boton. cuando en excel lo preciono
no me manda el mail requerido .
porfavor necesito mucho su ayuda
Asunto:
Re: Enviar correo electronico a traves de excel
De:
"Fernando Arroyo" <ferarr99QUITA@ESTOwanadoo.es>
Enviado:
7/3/2003 12:07:59 AM
"Suena" a que no has establecido la referencia a la
librería de Outlook. Te recuerdo que debes hacerlo desde
Herramientas->Referencias, estando en el editor de VBA. La
librería se llama "Microsoft Outlook X.x Object Library",
donde la X.x representa la versión, que varía dependiendo
de la versión de Office instalada en el equipo.
Un saludo.
Fernando Arroyo
MS MVP - Excel
"Cesar Escalante" escribió en el mensaje
news:07b501c3410c$ca739010$a101280a@phx.gbl...
Hola Fernando,
Pege la informacion en un modulo y al compilar me marca
un error en la primer linea del programa en (Dim oulApp
As Outlook.Application)esta instruccion y no entiendo
porque.
Todo esto lo pege en un modulo dentro de visual basic de
excel.
Saludos
Cesar
.
Sí, tienes que pegar el código en un módulo. Luego tendrás
que ver cómo te interesa llamarlo; por ejemplo, con un
botón, o quizás te interese que se ejecute automáticamente
al abrir el libro, aunque para esto tendrías que comprobar
antes que todo funciona bien.
Un saludo.
Fernando Arroyo
MS MVP - Excel
PS: Como sugerencia para el buen funcionamiento de los
grupos de noticias, conviene siempre que sea posible
mantener todos los mensajes sobre un tema en su "hilo"
original.
"Cesar Escalante M." escribió en el mensaje
news:03ed01c33d9f$7129b900$a001280a@phx.gbl...
Muchas gracias por la informacion. voy a trabajar en el y
si tengo alguna duda la expongo.para saber mas acerca de
esto
Esto en tonces lo debo hacer como un macro en visaul
basic verdad.
Re: Enviar un correo automatico a traves de una base de
datos en excel como aviso
De: "Fernando Arroyo"
Enviado: 6/27/2003 4:21:40 AM
No dices dónde está la dirección de correo electrónico
donde debe enviarse cada mensaje, ni el asunto, ni el
mensaje en sí. Además, quizás sería necesario algún tipo
de control para saber si el mensaje se ha enviado ya para
evitar enviarlo varias veces.
Como ejemplo, supongamos que las direcciones están en la
columna C, y que la columna D se usa para controlar si se
ha enviado ya el mensaje. El código podría ser:
Sub EnviarMensajes()
Dim oulApp As Outlook.Application, oulMensaje As
MailItem
Dim lngContLínea As Long
Set oulApp = New Outlook.Application
Set oulMensaje = oulApp.CreateItem(olMailItem)
lngContLínea = 1
While Not IsEmpty(ActiveSheet.Cells(lngContLínea, 1))
If ActiveSheet.Cells(lngContLínea, 2) = -2 And
Not ActiveSheet.Cells(lngContLínea, 4) Then
With oulMensaje
.To = ActiveSheet.Cells(lngContLínea, 3)
.Subject = "Envío automático de mensaje"
.Body = "Este mensaje se ha enviado desde
Excel automáticamente"
.Send 'Se puede sustituir por .Display
para hacer pruebas
ActiveSheet.Cells(lngContLínea, 4) = True
End With
End If
lngContLínea = lngContLínea + 1
Wend
Set oulMensaje = Nothing
Set oulApp = Nothing
End Sub
Lo que hace es recorrer todas las filas mientras no
encuentre una vacía, y en las filas que su columna B = -2
envía un mensaje a la dirección que se encuentra en su
columna C, salvo que su columna D tenga el valor
VERDADERO (o TRUE).
Sin duda tendrás que modificar el código para adaptarlo a
lo que realmente necesitas, pero pienso que te puede
servir como base.
Un saludo.
Fernando Arroyo
MS MVP - Excel
.
Leer las respuestas