Я вижу, у вас есть переменная сигнатуры 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
Свойство MSDN HTMLBody
Возвращает или задает строку, представляющую тело HTML указанного элемента.Свойство HTMLBody должно быть строкой синтаксиса HTML.Чтение / запись.
MSDN. Свойство тела
Возвращает или задает строку, представляющуютекст открытого текста элемента Outlook.Чтение / запись.