Редактировать заполнители в файле шаблона Outlook (.oft) с помощью макроса - PullRequest
0 голосов
/ 09 мая 2020

Я создал шаблон Outlook и написал макрос в Outlook, чтобы открыть файл шаблона как новое электронное письмо, готовое к отправке. См. Код ниже:

Sub Governance_Email()

    Dim UserName, ReportName, msg_1, msg_2, Title, Default

    Default = "1"

    Title = "Email Form"
    msg_1 = "Enter User"
    msg_2 = "Enter Report Name"

    UserName = InputBox(msg_1, Title, Default)
    ReportName = InputBox(msg_2, Title, Default)

    Set msg = Application.CreateItemFromTemplate(<path_to_file>\template_addDescription.oft")
    msg.Display

End Sub

Мне интересно, как добавить код для редактирования заполнителей в сгенерированном электронном письме? См. Прикрепленное изображение. Поля, которые я пытаюсь изменить, отмечены заполнителями [ИМЯ] и [ОТЧЕТ] и записаны в переменных UserName и ReportName в предыдущем коде.

Скриншот электронной почты

enter image description here

1 Ответ

0 голосов
/ 09 мая 2020

Вы можете использовать свойство HTMLBody класса MailItem, чтобы получить тело сообщения, в котором вы можете заменить все, что вам нужно. Если вы используете текстовые сообщения, рассмотрите возможность использования свойства Body.

Sub VBA_Replace_Function()

    Dim sString As String, sSubString As String

    sString = "hi [NAME]"

    sSubString = Replace(sString, "[NAME]", "Eugene")

    MsgBox "Replace F1 with Help :" & sSubString, vbInformation, "VBA Replace Function"

End Sub

См. Обзор функции замены VBA для получения дополнительной информации.

Также вы можете рассмотреть возможность использования объектной модели Word, которая предоставляет метод Replace из коробки.


Объектная модель Outlook предоставляет три основных способа работы с телами элементов:

  1. Body - строка, представляющая тело открытого текста Элемент Outlook.
  2. HTMLBody - строка, представляющая HTML тело указанного элемента.
  3. Редактор Word - объектная модель документа Microsoft Word для сообщение отображается. Свойство WordEditor класса Inspector возвращает экземпляр класса Document из объектной модели Word, который можно использовать для настройки тела сообщения.

Подробнее обо всех этих способах можно прочитать в Глава 17: Работа с телами предметов . Выбор способа работы с телом сообщения зависит от вас. Но объектная модель Word предоставляет все необходимые методы для выполнения работы.

...