Enviar un rango de celdas seleccionado, "con formato" por email

Explico lo que requiero:

Aclaro en primer lugar el procedimiento, que YA envía email.

a) De un listbox selecciono filas de acuerdo a mi necesidad

b) Estas filas del listbox las copia a un Textbox

c) Una vez en el Textbox, las copia al cuerpo del mensaje (email); pero aquí esta el problema:

1. Necesito que el Email que envío llegue con el formato de las celdas seleccionadas; es decir (cuadros, colores, etc).

2. Otra opción que seria la mas lógica y no logro adaptarla, es con el rango de celdas seleccionado, este copiarse directamente al cuerpo del email; claro esta si pasa con las respectivas lineas, colores, etc que aparece en la hoja de excel seleccionada.

1 respuesta

Respuesta
1

La opción 1 ya no es posible, porque en el textbox o en el listbox tienes solamente textos.

Para la opción 2, puedes utilizar lo siguiente, copiar las celdas que necesitas y pegarlas en el mail

Sub correo()
'***Macro Para enviar correos
'Por.Dam
    Set dam1 = CreateObject("outlook.application")
    Set dam2 = dam1.createitem(olmailitem)
    dam2.to = Range("B2") 'Destinatarios
    dam2.Subject = Range("C2") '"Asunto"
    dam2.body = "cuerpo del mensaje"
    Range("E2:H2"). Copy
    Dam2. Display 'El correo se muestra
        SendKeys "^{END}"
        SendKeys "^v"
    DoEvents
    Dam2. Send
End Sub

Saludos.Dam
Si es lo que necesitas.

Gracias nuevamente por tu pronta respuesta; bueno esta función trabaja perfectamente si empleo outlook.

Pero en mi caso yo tengo una función que trabaja con Gmail, Hotmail, Yahoo y demás "trabaja correctamente"; asi que mi problema fundamental es que los datos tomados de la hoja de excel no pasan con sus respectivos formatos (lineas, color, etc) como te lo mencione en la parte inicial de esta consulta.

voy a copiar una parte del código que tengo: para el envío.

mensaje = TextBox10
With oMsg
Set .Configuration = oConf
.From = """Bachue Joyeros"" <[email protected]>"
.To = """Andres"" <[email protected]>" 'TextBox9
.Subject = "Estado de Cuenta al" & " " & Format(Date, "dd/mmm/yyyy") 'TextBox2
.TextBody = mensaje '(aquí es donde requiero que pase con el formato de celdas)
.Send
End With

Cuando envío el email con .textbody=mensaje, toma lo del textbox y lo pega sin ningún formato, (obviamente). Entonces pregunto hay un comando aparte de sendkeys("^V") que lo haga ya que este no funciona para Gmail o por lo menos no ami.

Gracias...

Gracias nuevamente por la colaboración. como lo mencione la solución que DAM me dio funciona perfectamente si se emplea Outlook. Pero en mi caso no funcionaba, asi que les dejo un link donde aparecen muchas opciones de macros, funciones y demás para el envío de Email usando Excel con VBA.

http://www.rondebruin.nl/cdo.htm

Gracias mil.....

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas