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
Buenas tardes utilice tu código, pero solamente me funciona si cierro el excel y lo abro, es decir si estoy trabajando con el y guardo algunos datos, intento enviar el correo y sale error en esta parte'Se genera el archivo PDFh2.ExportAsFixedFormat Type:=xlTypePDF, _Filename:=ruta & nombre & ".pdf", _Quality:=xlQualityStandard, _IncludeDocProperties:=True, _IgnorePrintAreas:=False, _ OpenAfterPublish:=Falsese puede solucionar? sin tener que cerrar excel, muchas gracias de antemano - Pepe Enriquez
y qué dice el mensaje de error? - Dante Amor