Envio por mail yahoo desde excel

Quisiera saber si es posible hacer los siguiente:

Tengo una hoja de excel con datos desde A1 a G26 y quisiera que hiciera lo siguiente:

Que al dar a un botón me guardara ese rango en un PDF con el nombre que pone K4, en la carpeta del archivo o que me dejara elegir el destino.

Que ese archivo PDF lo mandara por mail, desde yahoo, a la dirección que ponga en K1, con el asunto que ponga en K2, con el texto del mail que ponga lo que hay en K3

¿Seria posible que hiciera todo eso?

2

2 respuestas

Respuesta
1

Te anexo la macro

Sub Enviar_Correo_Por_Yahoo()
'Act.Por Dante Amor
    correo = "[email protected]"
    Password = "password"
    rango = "A1:G26"
    arch = Range("K4").Value & ".pdf"
    para = Range("K1").Value
    asunto = Range("K2").Value
    cuerpo = Range("K3").Value
    concopia = Range("K5").Value
    copiaoculta = Range("K6").Value
    '
    Set Email = New CDO.Message
    dato = "http://schemas.microsoft.com/cdo/configuration/"
    Email.Configuration.Fields.Item(dato & "smtpserver") = "smtp.mail.yahoo.com"
    Email.Configuration.Fields.Item(dato & "sendusing") = 2
    Email.Configuration.Fields.Item(dato & "smtpserverport") = 465
    Email.Configuration.Fields.Item(dato & "smtpauthenticate") = Abs(1)
    Email.Configuration.Fields.Item(dato & "smtpconnectiontimeout") = 30
    Email.Configuration.Fields.Item(dato & "sendusername") = correo
    Email.Configuration.Fields.Item(dato & "sendpassword") = Password
    Email.Configuration.Fields.Item(dato & "smtpusessl") = True
    DoEvents
    '
    ruta = ThisWorkbook.Path & "\"
    Range(rango).ExportAsFixedFormat Type:=xlTypePDF, Filename:=ruta & arch, _
        Quality:=xlQualityStandard, IncludeDocProperties:=True, _
        IgnorePrintAreas:=False, OpenAfterPublish:=False
    '
    Email.From = correo
    Email.To = para
    Email.CC = concopia
    Email.BCC = copiaoculta
    Email.Subject = asunto
    Email.TextBody = cuerpo
    Email.AddAttachment ruta & arch
    Email.Configuration.Fields.Update
    On Error Resume Next
    Email.Send
    werr = Err.Number & " " & Err.Description
    If Err.Number = 0 Then werr = "Correo enviado"
    MsgBox "Mensaje : " & werr, vbInformation
End Sub

Pon tu información en esta parte:

    correo = "[email protected]"
    Password = "password"
    rango = "A1:G26"
    arch = Range("K4").Value & ".pdf"
    para = Range("K1").Value
    asunto = Range("K2").Value
    cuerpo = Range("K3").Value
    concopia = Range("K5").Value
    copiaoculta = Range("K6").Value

[sal u dos, no olvides valorar la respuesta.

Respuesta
-1

[Hola

Pues ambas cosas se pueden pero algo de VBA tienes que saber/entender. Para convertir en PDF lee por aquí:

https://abrahamexcel.blogspot.com/2018/03/exportando-archivos-excel-pdf.html 

Para enviar el archivo desde tu correo de Yahoo, debes usar VBA y CDO. Mira por aquí:

Intenta y vas comentando.

Abraham Valencia

Buenas,

¿Me puedes dar un correo electrónico?

Y te mando para que veas lo que quiero hacer

Un saludo

Sugiero colocar el archivo en algún "Drive" y compartir el enlace por aquí, de esa forma seremos varios los que podemos verlo y ayudarte.

Abraham Valencia

Como se hace???

[Hola

En tu archivo aún no has intentado nada ¿por qué?

Abraham Valencia

Porque no tengo ni idea de como hacerlo

En casos como el tuyo las opciones son:

- Lees los artículos enviados e intentas lograrlo. Ante las dificultades vuelves a los foros pero con preguntas puntuales.

- Contratas a alguien que por un pago te haga todo.

- Tienes suerte y alguien te lo hace todo gratis (cosa que no es la finalidad de los foros).

Saludos]

Abraham Valencia

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas