提问人:Uzumaki 提问时间:10/4/2023 更新时间:10/4/2023 访问量:51
使用来自 Excel 的通用邮件模板编写批量电子邮件,该模板具有唯一 ID,该 ID 必须写入邮件模板中的某个位置 [已关闭]
write bulk email with a common mail template from excel with unique id that must be written at a certain place in the mail template [closed]
问:
闭。这个问题正在寻求有关书籍、工具、软件库等的建议。它不符合 Stack Overflow 准则。它目前不接受答案。
我们不允许向读者、工具、软件库等寻求推荐的问题。您可以编辑问题,以便用事实和引文来回答。
上个月关闭。
要使用包含 Excel 工作表中唯一 ID 的通用邮件模板发送批量电子邮件,您可以使用 Excel 和电子邮件客户端(即 outlook)的组合
- 某个人的邮件在工作表的 E 列中,必须包含的 ID 在 F 列中
- 我还想在 CC 中添加某个人,并在每封邮件中附加一个通用的 docx 文件
答:
1赞
Harun24hr
10/4/2023
#1
您可以使用以下 sub 发送批量邮件。根据您的需要调整代码。您可以使用方法将变量的特定人员信息包含在电子邮件正文中。OFFSET()
emailCell
Option Explicit
Public Sub SendMail()
On Error GoTo HarunErrHandler
Dim strbody As String
Dim sendTo As String
Dim emailCell As Range
Dim OutApp As Object
Dim OutMail As Object
Dim SalaryMonth, strMailRange As String
strMailRange = Sheets("Sheet1").Range("$E$2").End(xlDown).Address
Set OutApp = CreateObject("Outlook.Application")
For Each emailCell In Sheets("Sheet1").Range("$E$2", strMailRange)
Set OutMail = OutApp.CreateItem(0)
strbody = "Hello " & emailCell & ",<br>Please check the attached file and update us."
With OutMail
' .BodyFormat = olFormatHTML
.Display
.Attachments.Add ThisWorkbook.Path & "\MyFolder\" & "myFileName" & ".docx"
.To = emailCell.Value
.CC = "[email protected];[email protected]"
.Subject = "Sending Bulk Email."
.HTMLBody = strbody & vbNewLine & .HTMLBody
'.Send
End With
Next emailCell
Exit Sub
HarunErrHandler:
MsgBox "Error :" & Err.Number & ", " & Err.Description, vbInformation, "Error"
End Sub
评论
1赞
Nick.Mc
10/4/2023
我可以建议你不要创建一个全新的内部循环实例吗?只在循环外创建一次似乎是有意义的。Outlook.Application
0赞
Harun24hr
10/4/2023
@Nick.Mc 好建议。我正在修改答案。
评论