Enviar correro electronico atravez de Excel

08/07/2003 - 23:33 por Cesar Escalante | Informe spam
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

#1 Fernando Arroyo
09/07/2003 - 10:05 | Informe spam
Me temo que yo no puedo decirte nada más. No soy ningún experto en Outlook, pero sí he usado alguna vez un código similar al que te sugerí, y nunca he tenido problemas. Lo único que se me ocurre es que preguntes en el grupo de Outlook (microsoft.public.es.outlook), porque parece que estamos más ante un problema de esta aplicación que de Excel...
Un saludo.


Fernando Arroyo
MS MVP - Excel


"Cesar Escalante" escribió en el mensaje news:03ea01c34598$8bb757e0$

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"
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$
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$
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


.

Preguntas similares