Я пытался вставить разные коды, чтобы получить подпись по умолчанию в Outlook, которая будет отображаться в конце этой строки кода при создании электронного письма. Какие-либо предложения?
Private Sub CommandButton1_Click()
Dim xOutApp As Object
Dim xOutMail As Object
Dim xMailBody As String
Dim signature As String
On Error Resume Next
Set xOutApp = CreateObject("Outlook.Application")
Set xOutMail = xOutApp.CreateItem(0)
xMailBody = "Hello," & vbCrLf & vbCrLf & "I recently reviewed a call of yours and the information that we reviewed in our coaching session is as follows:" & vbCrLf & vbCrLf & _
"Call Duration: " & Sheets("Sheet1 (13)").Range("j38").Value & vbCrLf & _
"Date: " & Sheets("Sheet1 (13)").Range("j39").Value & vbCrLf & _
"Coaching Feedback: " & Sheets("Sheet1 (13)").Range("J40").Value & vbCrLf & signature
On Error Resume Next
With xOutMail
.To = Range("D39")
.CC = Range("G39")
.BCC = ""
.Subject = "Quality Audit Coaching"
.Body = xMailBody
.Display
End With
On Error GoTo 0
Set xOutMail = Nothing
Set xOutApp = Nothing
End Sub
См. stackoverflow.com/questions/25820914/…
И stackoverflow.com/questions/22233264/…
Смотрите ниже ответ и дайте мне знать, если это сработало - спасибо


Я вижу, что у вас есть переменные подписи Dim, но я не вижу, чтобы вы присваивали их какому-либо объекту.
Попробуйте следующее, если это не тело HTML
With xOutMail
.To = Range("D39")
.CC = Range("G39")
.BCC = ""
.Subject = "Quality Audit Coaching"
.Display
.Body = xMailBody & .Body
' .Send
End With
И если его тело HTML, измените его на .HTMLBody = xMailBody & .HTMLBody
Или вы можете установить Dim signature variable
Пример
Set xOutApp = CreateObject("Outlook.Application")
Set xOutMail = xOutApp.CreateItem(0)
With xOutMail
.Display
signature = .HTMLBody
End With
Возвращает или задает строку, представляющую тело HTML указанного элемента. Свойство HTMLBody должно быть строкой синтаксиса HTML. Читай пиши.
Возвращает или задает строку, представляющую текстовое тело элемента Outlook. Читай пиши.
Объединение двух строк HTML — плохая идея — их действительно нужно объединить.
Подпись не будет добавлена к вновь созданному элементу, для этого вам нужно вызвать Display. MailItem.GetInspector тоже раньше делал это, но не больше (по состоянию на лето 2017 года).
Опс, я забыл об обновлении ответа .display и протестировал его. Это работает. @DmitryStreblechenko .body должен работать, если у OP нет форматирования в его подписи.
Посмотрите здесь: rondebruin.nl/win/s1/outlook/signature.htm