Cambiar nombre archivo en base a celdas y mandar por correo

Me podrían apoyar en este macros para cambiar nombre del archivo en base a celdas y mandar por correo

1 respuesta

Respuesta
1

H o l a:

Con gusto te ayudo con la macro, pero debes especificar con ejemplos lo que tienes.

Para renombrar el archivo, puedes explicar con imágenes, sería más práctico para ayudarte.

Para armar la macro de envío de correo:

  • ¿Es por outlook?
  • ¿A quién va dirigido?
  • ¿Qué va en el asunto?
  • ¿Qué va en el cuerpo?

sal u dos

SON MÁS DE 100 LÍNEAS, SERA POR OUTLOOK SALUDOS

H o l a:

Te anexo la macro para renombrar y enviar el archivo.

Guarda el archivo con la macro en la misma carpeta donde tienes los archivos xml.

Si un archivo xml que pusiste en la columna A no existe, en la columna "H" te pondrá el mensaje "no existe el archivo".

Si el correo se envió, en la columna "H" te pondrá "Enviado"

Sub RenombrarEnviar()
'Por.Dante Amor
    Columns("H").Clear
    ruta = ThisWorkbook.Path & "\"
    For i = 2 To Range("A" & Rows.Count).End(xlUp).Row
        arch1 = Cells(i, "A")
        arch2 = Cells(i, "C") & " " & Format(Cells(i, "D"), "mmmm yyyy") & ".XML"
        If Dir(ruta & arch1) <> "" Then
            FileCopy ruta & arch1, ruta & arch2
            Set dam = CreateObject("outlook.application").createitem(0)
            dam.To = Cells(i, "F")
            dam.Subject = "Dirigido a : " & Cells(i, "B") & " . Pago a: " & Cells(i, "C") & Format(Cells(i, "D"), "mmmm yyyy")
            dam.body = "Pago correspondiente a " & Format(Cells(i, "D"), "mmmm yyyy") & " por " & Format(Cells(i, "E"), "$#,##0.00")
            dam.Attachments.Add ruta & arch2
            dam.send 'El correo se envía en automático
            'dam.display 'El correo se muestra
            Cells(i, "H") = "Enviado"
        Else
            Cells(i, "H") = "no existe el archivo"
        End If
    Next
    MsgBox "Fin"
End Sub

':)
':)

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas