我正在尝试使用Word VBA向电子邮件收件人发送文档。在大多数情况下,这并不难。到目前为止我有这个代码:
With oItem
'Set the recipient for the new email
.To = "person1@mail.com"
'Set the recipient for a copy
.CC = "ccperson@mail.com"
'Set the subject
.Subject = "Blah blah"
End With
我的问题是我在Outlook中配置了几个发件人电子邮件地址,而Outlook在默认情况下选择了错误的地址。
有没有办法用上面的方法指定发件人的电子邮件地址?不用说,用于指定发件人地址的直观代码行(
.From = me@wherever.com
)不起作用。非常感谢。
更新:
1) 包括对Microsoft Outlook 16对象库的引用,以便可以访问
Outlook.MailItem
数据类型。邮件可以发送上面的代码(没有参考),但总是发送错误的发件人地址。
2) 将邮件项声明为
Outlook.Mail项目
. 这似乎使
SentOnBehalfOfName
sentonbehalfoff名称
现场。
Dim MAPIMailItem As Outlook.MailItem
Set MAPIMailItem = olkApp.CreateItem(olMailItem) 'Create a new mail message
With MAPIMailItem
.BodyFormat = olFormatPlain
.to = strTo
' SentOnBehalfOfName sets the From field on my machine,
' AFTER I declared MAPIMailItem as Outlook.MailItem
.SentOnBehalfOfName = "fromAddress@foo.com"
.Subject = strSubject
.body = strBody
.attachments.Add strAtt
'.send
.Display
End With