Generar Asunto de Correo Electrónico basado en valores variables de celdas
Me gustaría que el asunto del correo electrónico se genere a partir de la columna A de la misma fila que está activando el correo electrónico.
Entonces, si Q5 = 30, me gustaría que el asunto se tome de A5, etc.
Dim xRg As Range
Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
If Target.Cells.Count > 1 Then Exit Sub
Set xRg = Intersect(Range("Q2:Q6000"), Target)
If xRg Is Nothing Then Exit Sub
If IsNumeric(Target.Value) And Target.Value = 30 Then
Call Mail_smallTextOutlook
End If
End Sub
Sub Mail_smallText_Outlook()
Dim xOutApp As Object
Dim xOutMail As Object
Dim xMailBody As String
Set xOutApp = CreateObject("Outlook.Application")
Set xOutMail = xOutApp.CreateItem(0)
xMailBody = "Hola," & vbNewLine & vbNewLine & _
"Esto es línea 2"
On Error Resume Next
With xOutMail
.To = "dirección de correo electrónico"
.CC = ""
.BCC = ""
.Subject = "Esto debería hacer referencia a la celda"
.Body = xMailBody
.Send ' o usar .Send
End With
On Error GoTo 0
Set xOutMail = Nothing
Set xOutApp = Nothing
End Sub
davy.ai
Para generar el asunto del correo electrónico a partir de la columna A de la misma fila que está activando el correo electrónico, reemplace la siguiente línea:
.Asunto = "Esto debería hacer referencia a la celda"
con
.Asunto = Rango("A" & Target.Row).Value
Esto seleccionará el valor en la columna A de la misma fila que la celda modificada (indicada por
Target.Row
) y lo utilizará como asunto del correo electrónico.