使用VBA向多个收件人发送电子邮件
我有以下代码,允许我附加报告,然后将其发送给一个收件人 如何将其发送到多个地址 我尝试将地址放入数组中,但它会出现“类型不匹配”错误使用VBA向多个收件人发送电子邮件,vba,ms-access-2013,Vba,Ms Access 2013,我有以下代码,允许我附加报告,然后将其发送给一个收件人 如何将其发送到多个地址 我尝试将地址放入数组中,但它会出现“类型不匹配”错误 Dim strReportName作为字符串 作为对象的对象 将oMail作为对象 将OLN设置为Outlook.Namespace 作为字符串的Dim strTO 作为字符串的Dim strc Dim strMessageBody作为字符串 作为字符串的Dim strSubject 设置oLook=CreateObject(“Outlook.Applicatio
Dim strReportName作为字符串
作为对象的对象
将oMail作为对象
将OLN设置为Outlook.Namespace
作为字符串的Dim strTO
作为字符串的Dim strc
Dim strMessageBody作为字符串
作为字符串的Dim strSubject
设置oLook=CreateObject(“Outlook.Application”)
'Set olns=oLook.GetNamespace(“MAPI”)
设置oMail=oLook.CreateItem(0)
“*******************用户定义节”************************
strTO=”chrissparkes@me.com"
strMessageBody=“”
strSubject=“每日跳过”
'*********************************************************************
与奥马尔
.To=strTO
.CC=strCC
.Body=strMessageBody
.Subject=strSubject
.Attachments.Add“C:\Output Reports\SkipLotReport.xlsx”
.发送
以
设置oMail=Nothing
设置为OK=无
'Set olns=无
“DB.Close
‘t loutput.Close
'dbLocal.Close
关闭
'Set objmail=Nothing
'Set DB=Nothing
设置tbloutput=Nothing
设置objWorksheet=Nothing
设置objWorkbook=Nothing
设置objExcel=Nothing
设置tbloutput=Nothing
Set dbLocal=Nothing
以分号分隔的电子邮件地址:
strTO = "chrissparkes@me.com;you@me.com;thirdguy@there.org"
正如@HansUp在评论中所指出的,如果您的电子邮件地址已经在一个数组中,您可以使用Join
函数将其转换为分号分隔的字符串:
strTO = Join(YourArrayVariable, ";")
strTO是一个字符串
使用与在“收件人”框中手动输入相同的格式
strTO=”chrissparkes@me.com; another@me.com"
strTO = Join(YourArrayVariable, ";")