Excel - VBA Code para enviar mail con varias lineas en el cuerpo

 
Vista:
Imágen de perfil de Fernando
Val: 6
Ha aumentado su posición en 3 puestos en Excel (en relación al último mes)
Gráfica de Excel

VBA Code para enviar mail con varias lineas en el cuerpo

Publicado por Fernando (2 intervenciones) el 31/05/2021 19:00:32
Estimados tengo el siguiente codigo en una macro de Excel, pero necesitaba poder incorporar mas lineas al Body del mail, ya que solo me muestra en este caso Q19. El contenido del body que quiero mostrar seria Q19:T31

El codigo es:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
Private Sub CommandButton1_Click()
Dim objOutlook As Object
Dim objMail As Object
Dim OApp As Object, OMail As Object, signature As String
Dim rngTo As Range
Dim rngSub As Range
Dim rngMessage As Range
 
Dim rngAttachment As Range
 
Set objOutlook = CreateObject("Outlook.Application")
Set OApp = CreateObject("Outlook.Application")
Set objMail = objOutlook.CreateItem(0)
Set OMail = OApp.CreateItem(0)
 
 
With OMail
    .Display
End With
 
signature = OMail.HTMLBody
 
With ActiveSheet
Set rngTo = .Range("Q13")
Set rngSub = .Range("Q18")
Set rngMessage = .Range("Q19")
End With
 
With OMail
.To = rngTo.Value
.Subject = rngSub.Value
.HTMLBody = rngMessage + signature
.Display
End With
 
Set objOutlook = Nothing
Set objMail = Nothing
Set rngTo = Nothing
Set rngSub = Nothing
Set rngMessage = Nothing
Set rngAttachment = Nothing
End Sub

Muchas Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Antoni Masana
Val: 4.908
Oro
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

VBA Code para enviar mail con varias lineas en el cuerpo

Publicado por Antoni Masana (2478 intervenciones) el 01/06/2021 14:19:02
Con este código copio en el cuerpo del mensaje un rango de celdas:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
' </> --------------------------------------------------------------------- </>
' </> ---&---   Envia por correo de OUTLOOK                         ---&--- </>
' </> --------------------------------------------------------------------- </>
 
Private Sub Mail_Outlook()
    Dim Destino As String
 
    ' ---&--- Seleccionamos el rango de celdas a enviar Select
 
    Sheets("Mascara").Select
    ActiveSheet.Range("A1:O31").Select
 
    ' ---&--- Es true si son visibles tanto el encabezado de _
              composición de correo electrónico y la barra de _
              herramientas de sobres
 
    ActiveWorkbook.EnvelopeVisible = True
 
    ' ---&--- Llamamos al envío...
 
    With ActiveSheet.MailEnvelope
       .Item.to = Destino
       .Item.cc = ""                         'con copia a...
       .Item.bcc = ""                        'con copia oculta a...
 
       .Item.Subject = Asunto
       .Introduction = Observaciones
       .Item.Send
    End With
End Sub

Saludos.
\\//_
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Fernando
Val: 6
Ha aumentado su posición en 3 puestos en Excel (en relación al último mes)
Gráfica de Excel

VBA Code para enviar mail con varias lineas en el cuerpo

Publicado por Fernando (2 intervenciones) el 02/06/2021 14:32:01
Excelente!! Muchas gracias Antoni!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar