Enviar email excel segun condicion
Como puedo hacer que me pueda enviar mensajes automáticos según la la aproximación de la fecha de la columna QUE pero con un intervalo de 20 días antes de la fecha, 15 días antes de la fecha y 11 días antes de la fecha que ese sea el rango en el que se envíe un email de notificación el cual deberá llevar en el asunto del mensaje los datos de las columna A (trabajo), C (cliente) y J (Orden de compra)
He creado esta macro y no funciona:
Sub Mandar_Mail()Dim Fila As IntegerDim OutMail As ObjectDim OutApp As ObjectDim StrBody As StringDim StrBody1 As StringDim StrBody2 As StringWorksheets("PM Scheduler").SelectSet OutApp = CreateObject("Outlook.Application")StrBody = "Señor," & vbCrLf & vbCrLfStrBody1 = "Sinceramente" & vbCrLf & vbCrLfStrBody2 = "Nombre remitente" ' Nombre del remitente u = Range("K" & Rows.Count).End(xlUp).Row For i = 3 To u If Cells(i, 11).Value <= Date - 20 And Cells(i, 11).Value <= Date - 15 And Cells(i, 11).Value <= Date - 11 ThenSet OutMail = OutApp.CreateItem(0)With OutMail .To = "[email protected]" .Subject = Worksheets("Hoja1").Range("A" & i) & Worksheets("Hoja1").Range("C" & i) & Worksheets("Hoja1").Range("J" & i) .Body = StrBody & vbCrLf & vbCrLf & StrBody1 & StrBody2 .SendEnd WithEnd IfNext FilaSet OutMail = NothingSet OutApp = NothingEnd Sub
Respuesta de Dante Amor
2