Macro para enviar mail a outlook entregando pronta fecha de vencimiento

Pudieras ayudarme a generar una macro que envíe mail avisando a la persona encargada de las concesiones de la empresa con el fin de solicitar el pago de los canon correspondientes 15 días antes de la fecha estimada.

Tengo un excel que posee todas las fechas que por contrato la concesionaria debe entregar una serie de documentos y pagos, en la fecha estipulada, este excel se compone de la siguiente manera:

(A3)Control de Contrato (B3)Fecha Limite (E3) Días restantes (F3) Monto (G3) Estatus (O3) Mail Encargado

La idea es poder avisar 15 días antes de la fecha limite (y mayor a 1 día, ya que existen pestañas en blanco), la pestaña (E3) me va mostrando cuantos días faltan para realizar el cobro, pero mi idea es poder avisar enviando un correo al outlook del encargado cuando esta en el rango de los 15 días y que este correo tenga el siguiente formato:

Mail: Encargado

Asunto: Control de Concesiones

Mensaje: Aviso de cobro a concesionaria correspondiente a "A3"

                 monto: "F3" 

                Estatus: "G3"

                Generar cobro en la Fecha "B3"

Adicionalmente si este correo se pudiera generar apretando alguna imagen en el excel, para que este correo no sea automático.

1 respuesta

Respuesta
1

H o l a: Envíame tu archivo con algunos ejemplos, me dices en esos ejemplos, cuáles se enviarían al llegar a la fecha 9 de feb de 2017, o cuáles se enviarían el día de mañana 10feb2017.

Mi correo [email protected]

En el asunto del correo escribe tu nombre de usuario “Patricio Rios S” y el título de esta pregunta.

Te envié el correo estimado, muchas gracias !

Te anexo la macro. Cambia "[email protected]", por el mail del destinatario.

'***Macro Para enviar correos
Sub correo()
'Por.Dante Amor
    For i = 4 To Range("B" & Rows.Count).End(xlUp).Row
        If InStr(1, Cells(i, "A"), ". Control") > 0 Then
            asunto = Cells(i, "A")
        End If
        fecha = Cells(i, "B")
        If fecha <> "" And IsDate(fecha) Then
            nva = Date + 15
            If fecha = nva Then
                Set dam = CreateObject("outlook.application").createitem(0)
                dam.To = "[email protected]" 'Destinatarios
                dam.Subject = asunto
                dam.Body = _
                    "Aviso de cobro a concesionaria correspondiente a: " & Range("A" & i).Value & vbCr & _
                    "Monto: " & Range("F" & i).Value & vbCr & _
                    "Estatus: " & Range("G" & i).Value & vbCr & _
                    "Generar cobro en la Fecha: " & Range("B" & i).Value
                dam.Send 'El correo se envía en automático
                'dam.Display 'El correo se muestra
            End If
        End If
    Next
    MsgBox "Correos enviados", vbInformation, "SALUDOS"
End Sub

'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas