【发布时间】:2019-06-08 01:12:47
【问题描述】:
我有一个用户将eMails 发送到一个大的“收件人”列表,有时超过 20 个地址。有了这么大的"To" 列表,收到的邮件有时会出现在收件人的垃圾邮件文件夹中。显然,我们希望避免这种情况。
我的想法是让用户创建一个原始的eMail,然后运行一个宏。宏将遍历 Excel 工作表中的所有eMail 地址,然后复制原始消息并将其单独发送给每个收件人。
我不确定如何将MailItem 从原始MailItem 复制到新的MailItem。 Excel 循环工作正常。
这是我的缩写宏:
Option Explicit
Sub Send_emails()
'.
'.
Set objDoc = objInspector.WordEditor
Set objWrdApp = objDoc.Application
Set objSelection = objWrdApp.Selection
'Loop through the Rows in the worksheet. Start at row 2 to ignore header
For lngCurrSheetRow = 2 To lngLastSheetRow
strEmailAddress = objWorksheet.Cells(lngCurrSheetRow, 1).Value
'Set objNewMail so that the new message is created and can be referenced.
Set objNewMail = Application.CreateItem(0)
With objNewMail
.Body = objSelection
.To = strEmailAddress
End With
Next lngCurrSheetRow
'.
'.
End Sub
【问题讨论】:
-
您可以将所有接收者指定为密件抄送
-
您好,扎克先生。垃圾邮件过滤器似乎也捕获了密件抄送字段中的多个地址。
-
那么你在其他地方遇到了问题。研究如何防止电子邮件进入垃圾邮件。使用 spf 记录、dmarc 等。
标签: excel vba outlook outlook-2013