Как добавить файл JPG к часто используемому шаблону в указанном c месте в теле письма - PullRequest
0 голосов
/ 29 января 2020

Я пытаюсь распространять электронные письма с помощью шаблона outlook oft. На часто используемом шаблоне в указанном месте c я хочу прикрепить файл jpg, который я создал из диапазона Excel.

Dim OutApp As Object
Dim OutMail As Object
Dim str_jpeg_file as String
str_jpeg_file  = "B:\temp\test.jpg"
Set OutApp = CreateObject("Outlook.Application")
Set OutMail = OutApp.CreateItemFromTemplate(ThisWorkbook.Path & "\Test.oft")
With OutMail
    .To = "test@abcd.com"
    .CC = ""
    .BCC = ""
    .Subject = "Test mail"
    .SentOnBehalfOfName = "zyz@abcd"
    .Attachments.Add str_jpeg_file, 1, 0
    .HTMLBody = Replace(.HTMLBody, "##IMAGE_PLACEHOLDER##", "<img src=""cid:test.jpg""height=520 width=750>")
    '.Send
    .display
End With

Редактировать:

Обновлен путь к файлу jpg, т.е. str_jpeg_file

1 Ответ

1 голос
/ 31 января 2020

Чтобы дать вам полный рабочий пример:

Option Explicit

Sub test()
    Dim OutApp As Object
    Dim OutMail As Object
    Dim str_jpeg_file As String
    str_jpeg_file = "C:\Temp\test.png"
    Set OutApp = CreateObject("Outlook.Application")
    'Set OutMail = OutApp.CreateItemFromTemplate(ThisWorkbook.Path & "\Test.oft")
    'instead of a template I create a new mail
    Set OutMail = OutApp.CreateItem(0)
    With OutMail
        .To = "test@abcd.com"
        .CC = ""
        .BCC = ""
        .Subject = "Test mail"
        .SentOnBehalfOfName = "zyz@abcd"
        .Attachments.Add str_jpeg_file, 1, 0
        'first we write some placeholder text so we can replace it
        .HTMLBody = "lalala ##IMAGE_PLACEHOLDER## lala"

        'replace
        .HTMLBody = Replace(.HTMLBody, "##IMAGE_PLACEHOLDER##", "<img src=""cid:test.png""height=256 width=256>")
        '.Send
        .display
    End With
End Sub

Обратите внимание, что я использовал новый адрес электронной почты (без шаблона), потому что здесь его легче показать.

И он отлично работает:

enter image description here

Так что, если у вас не работает файл изображения, либо он не является допустимым изображением, либо вы сделали что-то еще неправильно, например typos et c , или ваш шаблон как-то проблема. Проверьте снова с кодом выше.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...