Forums Últimos mensajes - Powered by IBM
 

Crear email desde excel...

17/01/2005 - 19:09 por Xavier | Informe spam
Hola,

Me gustaría saber,si es posible,lo siguiente:

Ya sea a través de una macro o de VBA, conseguir que cada x minutos se mande
un email (ó SMS...) con el valor de una casilla determinada (siempre la
misma)

Lo IMPRESCINDIBLE es que el valor de dicha casilla figure en el OUTLOOK
EXPRESS en el apartadeo de ASUNtO y no como MENSAJE.

De todos modos, si solo puede figurar en el apartado de "mensaje", también
se agradece la explicación de como hacerlo.

Gracias de antemano.

Saludos
 

Leer las respuestas

#1 KL
18/01/2005 - 00:48 | Informe spam
Hola Xavier,

Prueba el codigo q te pongo mas abajo y q puede ir en cualquier modulo.

Tendras q adaptar el siguiente fragmento a tus necesidades:

-Fragmento-
With ThisWorkbook.Sheets("Hoja1")
Direccion = .Range("A1")
Asunto = .Range("A2")
Remitente = """Xavier"" "
Servidor = "smtp.telefonica.net" 'el nombre de tu servidor SMTP.
End With


Para mas informacion revisa este enlace:
http://www.rondebruin.nl/sendmail.htm

Saludos,
KL

'-Inicio Codigo-
Option Explicit

Dim Repetir As Date

Sub IniciarEnvio()
Repetir = Now + TimeValue("00:00:20")
Call Mensaje
Application.OnTime Repetir, "IniciarEnvio"
End Sub

Sub DetenerEnvio()
Application.OnTime Repetir, "IniciarEnvio", schedule:=False
End Sub

Private Sub Mensaje()
'Este codigo no funciona en Windows 98 ni ME.
'Este codigo solo funciona cuando se esta "online"
Dim oMensaje As Object, oConfiguracion As Object
Dim Campos As Variant, Asunto As String
Dim Direccion As String, Remitente As String, Servidor As String

With ThisWorkbook.Sheets("Hoja1")
Direccion = .Range("A1")
Asunto = .Range("A2")
Remitente = """Xavier"" "
Servidor = "smtp.telefonica.net" 'el nombre de tu servidor SMTP.
End With

Set oMensaje = CreateObject("CDO.Message")

Set oConfiguracion = CreateObject("CDO.Configuration")
oConfiguracion.Load -1 ' CDO Source Defaults
Set Campos = oConfiguracion.Fields
With Campos
.Item("http://schemas.microsoft.com/cdo/co...sing") _
= 2
.Item("http://schemas.microsoft.com/cdo/co...rver") _
= Servidor
.Item("http://schemas.microsoft.com/cdo/co...port")
_
= 25
.Update
End With
With oMensaje
Set .Configuration = oConfiguracion
.To = Direccion
.From = Remitente
.Subject = Asunto
.TextBody = ""
.Send
End With
Set oMensaje = Nothing
Set oConfiguracion = Nothing
End Sub
'-Fin Codigo-



"Xavier" wrote in message
news:csgv1k$9qd$
Hola,

Me gustaría saber,si es posible,lo siguiente:

Ya sea a través de una macro o de VBA, conseguir que cada x minutos se
mande un email (ó SMS...) con el valor de una casilla determinada (siempre
la misma)

Lo IMPRESCINDIBLE es que el valor de dicha casilla figure en el OUTLOOK
EXPRESS en el apartadeo de ASUNtO y no como MENSAJE.

De todos modos, si solo puede figurar en el apartado de "mensaje",
también se agradece la explicación de como hacerlo.

Gracias de antemano.

Saludos


Preguntas similares