Macro para convertir hoja exel en pdf i enviar por oultlook 2010

He probado cantidad de formas para convertir hoja exel en pdf y enviar por correo

1 Respuesta

Respuesta
2

Te anexo una macro para enviar una hoja en pdf.

Tienes que completar algunos datos en la macro:

- Cambia "Hoja1" por el nombre de la hoja que vas a enviar.

- "[email protected]", por el correo del destinatario.

- "Una hoja en correo", por el asunto.

- "Cuerpo del correo", por el cuerpo del correo.

Sub EnviarHojaEnPdf()
'Por.Dante Amor
    Application.ScreenUpdating = False
    Application.DisplayAlerts = False
    hoja = "Hoja1"                              'Nombre de la hoja
    '
    Set h2 = Sheets(hoja)
    ruta = ThisWorkbook.Path & "\"
    nombre = h2.Name
    '
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
        Filename:=ruta & nombre & ".pdf", _
        Quality:=xlQualityStandard, _
        IncludeDocProperties:=True, _
        IgnorePrintAreas:=False, _
        OpenAfterPublish:=False
    '
    Set Dam = CreateObject("outlook.application").createitem(0)
    Dam.to = "[email protected]"                   'Destinatarios
    Dam.Subject = "Una hoja en correo"          '"Asunto"
    Dam.Body = "Cuerpo del correo"              'Cuerpo
    Dam.Attachments.Add wpath & nombre & ".pdf" 'Archivo
    Dam.Send
End Sub

Saludos.Dante Amor

Muchas ¡Gracias! Me va perfecto ha sido de gran ayuda tu reporte para entender donde fallaba mi código, llevaba días probando

Más gracias por tu respuesta tan rápida.

Un saludo,

Un detalle, cambia en la macro

Activesheet

Por

H2

Sub EnviarHojaEnPdf()
'Por.Dante Amor
    Application.ScreenUpdating = False
    Application.DisplayAlerts = False
    hoja = "Hoja1"                              'Nombre de la hoja
    '
    Set h2 = Sheets(hoja)
    ruta = ThisWorkbook.Path & "\"
    nombre = h2.Name
    '
    h2.ExportAsFixedFormat Type:=xlTypePDF, _
        Filename:=ruta & nombre & ".pdf", _
        Quality:=xlQualityStandard, _
        IncludeDocProperties:=True, _
        IgnorePrintAreas:=False, _
        OpenAfterPublish:=False
    '
    Set Dam = CreateObject("outlook.application").createitem(0)
    Dam.to = "[email protected]"                   'Destinatarios
    Dam.Subject = "Una hoja en correo"          '"Asunto"
    Dam.Body = "Cuerpo del correo"              'Cuerpo
    Dam.Attachments.Add wpath & nombre & ".pdf" 'Archivo
    Dam.Send
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas