Macro para enviar registros de excel por correo

Tengo una tabla de excel de la cual se tiene que enviar cada registro por separado en un correo electrónico.

La idea es que al apretar un botón de ese excel se copie un registro en el formato que sea y esa información se adjunte en el cuerpo del mensaje y que de alguna forma se envien todos los registros en diferentes correos de forma automática o semiautomática (a partir de la ejecución de la macro).

1 respuesta

Respuesta
2

1. ¿Tienes un formato en excel? O solamente quieres enviar el asunto, y un texto en el cuerpo del correo,

2. Cómo quieres quieres el cuerpo del correo, ¿solamente el texto de algunas celdas o la imagen de unas celdas?

3. Qué versión de excel tienes

4. En dónde esta el correo del destinatario, ¿en alguna celda? ¿O siempre se debe enviar a un mismo correo?

5. ¿Quieres el envío por outlook?

Antes de nada muchísimas gracias por responder!

1. El formato importa poco, simplemente que las dos primeras celdas del registros sean el asunto y el resto que sean cuerpo del mensaje.

2. En el cuerpo tiene que salir el encabezado de la tabla y el correspondiente valor de ese registro, copiado directamente de excel o como imagen, da igual.

3. Trabajo con excel 2010.

4. Por outlook sí.

Millones de gracias!!!

Prueba con esta aplicación que desarrollé para enviar correos a diferentes personas, enviar incluso varios archivos.

https://www.dropbox.com/s/ccu9fzc0s2c45cy/correo5b.xlsm?dl=0 

Revisa si te sirve o si hay que hacerle algún cambio.

Hola Dante,

No me deja abrirlo, probablemente tengo el dropbox capado en el trabajo. Se podría enviar de alguna otra forma?

Mil gracias!

Te envié el archivo a tu correo.

La macro que envía los correos:

[code]'***Macro Para enviar correos
Sub correo()
'Por.Dante Amor
    col = Range("H1").Column
    For i = 2 To Range("B" & Rows.Count).End(xlUp).Row
        Set dam = CreateObject("outlook.application").createitem(0)
        dam.To = Range("B" & i) 'Destinatarios
        dam.CC = Range("C" & i) 'Con copia
        dam.Bcc = Range("D" & i) 'Con copia oculta
        dam.Subject = Range("E" & i) '"Asunto"
        dam.body = Range("F" & i) '"Cuerpo del mensaje"
        '
        For j = col To Cells(i, Columns.Count).End(xlToLeft).Column
            archivo = Cells(i, j)
            If archivo <> "" Then dam.Attachments.Add archivo
        Next
        dam.send 'El correo se envía en automático
        'dam.display 'El correo se muestra
    Next
    MsgBox "Correos enviados", vbInformation, "

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas