Необходимо отправить отдельные электронные письма нескольким получателям из списка Excel - PullRequest
0 голосов
/ 10 апреля 2019

У меня есть список превосходных людей. Я хочу отправлять электронные письма всем как отдельными письмами. Необходимо динамически менять тему, тело и получателей.

Я пытался использовать vba и делал это. Но я не знаю, как динамически менять тему и тело. Также, как я могу ввести несколько строк в теле?

Я не хочу, чтобы всем получателям отправлялось одно и то же письмо. На рисунке показаны имена полей в excel Мне нужно иметь имя и первую букву фамилии в теме. И в теле первая строка содержит Привет, имя. И личная почта отправляется в поле «to», а профессионал как «cc»

1 Ответ

1 голос
/ 10 апреля 2019

Попробуйте это следующим образом:

'Initialize objects
Dim objOutlook As Outlook.Application
Dim objOutlookMsg As Outlook.MailItem

Set objOutlook = CreateObject("Outlook.Application")
Set objOutlookMsg = objOutlook.CreateItem(olMailItem)



With objOutlookMsg
  .To = ws.Range("A1") 'Assuming TO mail addresses are located here and separated with ";"
  .CC = ws.Range("B1") 'Assuming TO mail addresses are located here and separated with ";"
  .Subject = ws.Range("C1") 'Assuming subject is declared here
  .HTMLBody = ws.Range("D1") 'Assuming body is declared here
  If address_attachment_line.Value <> "" Then
    .Attachments.Add FilePath & FileName
  End If
  .Display
End With

За счет сохранения динамической информации в диапазонах, на которые ссылается код, вы можете управлять отдельными письмами.текст, просто используйте тег <br>, поскольку он интерпретируется как HTML-контент.

Надеюсь, это поможет вам!

...