Macro para copiar rango y enviar correo electrónico

Tengo una hoja de excel y quisiera saber si hay alguna manera de hacer con una macro que copie el rango (B2:E11) y lo ponga en un correo electrónico de outlook, yo lo que hago es copiar y pegar eso manualmente, pero quisiera saber si hay manera de hacerlo con alguna macro.

3 Respuestas

Respuesta
3

Esta es tu solución. Solo tienes que cambiar el correo del destinatario y el asunto:

Sub correo()
Range("b2:e11").Copy
Set parte1 = CreateObject("outlook.application")
Set parte2 = parte1.createitem(olmailitem)
parte2.to = "[email protected]" 
parte2.Subject = "asunto de mensaje" 
parte2.display
Application.SendKeys = "^v" 
Set parte1 = Nothing
Set parte2 = Nothing
End Sub

Recuerda finalizar y puntuar

buenas tardes experto. me marca error de compilación en esta fila Application.SendKeys = "^v", espero puedas ayudarme. saludos y gracias.

Si, hay un error de copiado a esa línea le sobra el =.

Lo correcto es así:

Application. Sendkeys "^v"

excelente...

se puede hacer que se envíe automático, sin que tenga que enviarme a Outlook, simplemente que se envíe y ya?-

gracias

Entonces utiliza esta macro:

Sub correo()
Range("b2:e11").Copy
Set parte1 = CreateObject("outlook.application")
Set parte2 = parte1.createitem(olmailitem)
parte2.to = "[email protected]" 
parte2.Subject = "asunto de mensaje" 
Application.SendKeys  "^v" 
parte2.send
Set parte1 = Nothing
Set parte2 = Nothing
End Sub

si envía el correo pero lo envía en blanco, en cambio si lo envío manualmente (osea con esta instrucción "" parte2.display "" ) si lo envía como deseo, disculpa tanta molestia. saludos

Prueba ahora con esta, he hecho alguna corrección

Sub correo()
Range("b2:e11").Copy
Set parte1 = CreateObject("outlook.application")
Set parte2 = parte1.createitem(olmailitem)
parte2.to = "[email protected]"
parte2.Subject = "asunto de mensaje"
parte2.display
Application.SendKeys "^v"

parte2.send
Set parte1 = Nothing
Set parte2 = Nothing
End Sub

Respuesta

Buscando en google he encontrado este post, el cual me ha servido montones.

Pero quiero conocer si se puede copiar rangos separadados, me explico: quiero copiar el rango (b1:h1) y que debajo de este copie el rango (b5:h5), ¿es posible?

Respuesta

¿Cómo podría a parte de incluir la tabla meter un texto en el cuerpo del mensaje por encima de la tabla?

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas