
Envío de Email
Publicado por Fco. Javier (2 intervenciones) el 12/04/2017 08:00:08
Hola a todos y gracias de antemano a quien pueda ayudarme.
Necesito hacer una macro que envíe un correo electrónico automáticamente.
El problema es que parece que todo el código está bien, no aparece ningún error en tiempo de ejecución, pero no envía el correo.
Podría alguien decirme si ve algún fallo??
Gracias por la ayuda, saludos.
Necesito hacer una macro que envíe un correo electrónico automáticamente.
El problema es que parece que todo el código está bien, no aparece ningún error en tiempo de ejecución, pero no envía el correo.
Podría alguien decirme si ve algún fallo??
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
Public Sub correoeVpagsPDF() 'Envia correo electrónico con hoja activa en pdf
'***--Declaración de variables--***
Dim nfac, cliente, Email, ruta, LIBRO, ahora, ArchivoPdf As String
Dim ProgCorreo, CorreoSaliente As Object 'Objetos de outlock
With Application
.ScreenUpdating = False 'Excel no refresca la pantalla
.EnableEvents = False 'Deshabilita eventos
.DisplayAlerts = False 'Deshabilita las alertas
End With
Set nfac = Range("D2") 'Nombre de la orden
Set cliente = Range("B2") 'Nombre del técnico
Set Email = Range("G3") 'Email del remitente
ruta = "E:\Para copia de seguridad\Quique\" 'Ruta para guaradar el archivo
ahora = Application.WorksheetFunction.Text(Now(), "dd.mm.yy- hh.mm") 'Consigue la fecha actual
LIBRO = nfac & "-" & cliente & "-" & ahora & ".pdf" 'nombre del pdf
ArchivoPdf = ruta & LIBRO 'ruta con el nombre del archivo incluido
'**--Objeto outlook--**
Set ProgCorreo = CreateObject("Outlook.Application")
Set CorreoSaliente = ProgCorreo.CreateItem(0)
'**--Crea el pdf con la hoja activa y lo guarda en la carpeta seleccionada--**
With ActiveSheet
.ExportAsFixedFormat Type:=xlTypePDF, Filename:=ArchivoPdf, _
Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
OpenAfterPublish:=False
End With
On Error Resume Next
'**--Envio de email--**
With CorreoSaliente
.To = Email 'Dirección
.CC = "Correo@prueba" 'Copia
.BCC = ""
.Subject = "Envío de su factura nº " & nfac 'Asunto
.Body = "Correo de prueba" 'Cuerpo del email
.Attachments.Add ArchivoPdf 'Archivo adjunto. El pdf creado
.Display 'Para ver el mensaje antes de enviarlo - para enviar sin ver Send
End With
On Error GoTo 0
'**--Se borran los objetos outlook--**
Set CorreoSaliente = Nothing
Set ProgCorreo = Nothing
With Application
.ScreenUpdating = True 'Excel no refresca la pantalla
.EnableEvents = True 'Deshabilita eventos
.DisplayAlerts = True 'Deshabilita las alertas
End With
End Sub
Gracias por la ayuda, saludos.
Valora esta pregunta


0