Envios de mail desde excel por medio de microsoft outlook

"para Dante Amor" Estimado, necesitaría desarrollar una macro que cumpla con lo siguiente:

Columna D9 legajo, E9 nombre, Columna AU9 Encargado, columna AV9 Empleador, Columna AW9 Condición, columna AY Antigüedad, BB9 fecha de inicio, BC 9 fecha de regreso, BD9 cantidad de días, BE a BX los distintos mails.

Lo que yo quiero es que :

1° 10 antes de la fecha de inicio de vacaciones se envíe un mail

2° 5 días antes de la fecha de vacaciones se reenvíe el mismo mail

Todo esto debe hacerse en forma automática desde microsoft outlook 2010 con el siguiente detalle:

Asunto: Informe de Vacaciones

Cuerpo: Por el presente se informa que el empleado abajo detallado, gozara del siguiente Periodo Vacacional:

Legajo-Nombre-Fecha de Inicio-Fecha de Regreso-cantidad de días-Encargado-empleador-Condición-Antigüedad

Atentamente: Oficina de Recursos Humanos

1 respuesta

Respuesta
2

¿A quién se va a enviar el correo?

¿Qué tan automático lo quieres? Puede ser que abras el libro y se haga la revisión. O puede ser que abras el libro y presiones un botón para que haga la revisión.

Sal u dos

Te anexo la macro

Sub EnviarCorreos()
'Por.Dante Amor
    Sheets(1).Select
    For i = 9 To Range("BB" & Rows.Count).End(xlUp).Row
        cinco = Cells(i, "BB").Value - 5
        If Date = Cells(i, "BB").Value - 5 Or _
           Date = Cells(i, "BB").Value - 10 Then
            '
            uc = Cells(i, Columns.Count).End(xlToLeft).Column
            If uc >= Columns("BE").Column Then
                For j = Columns("BE").Column To uc
                    para = para & Cells(i, j).Value & "; "
                Next
                Set dam = CreateObject("outlook.application").createitem(0)
                dam.To = para
                dam.Subject = "Informe de Vacaciones"
                dam.body = "Por el presente se informa que el empleado abajo detallado, " & _
                           "gozará del siguiente Periodo Vacacional: " & vbCr & _
                           "Legajo: " & Cells(i, "D").Value & vbCr & _
                           "Nombre: " & Cells(i, "E").Value & vbCr & _
                           "Fecha de Inicio: " & Cells(i, "BB").Value & vbCr & _
                           "Fecha de Regreso: " & Cells(i, "BC").Value & vbCr & _
                           "Cantidad de días: " & Cells(i, "BD").Value & vbCr & _
                           "Encargado: " & Cells(i, "AU").Value & vbCr & _
                           "Empleador: " & Cells(i, "AV").Value & vbCr & _
                           "Condición: " & Cells(i, "AW").Value & vbCr & _
                           "Antigüedad: " & Cells(i, "AY").Value & vbCr & vbCr & _
                           "Atentamente: Oficina de Recursos Humanos"
                '
                dam.Send 'El correo se envía en automático
                'dam.Display 'El correo se muestra
            End If
        End If
    Next
    MsgBox "Revisón de envío de correos terminada"
End Sub

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

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas