Excel VBA:如何在 Outlook 中向组发送电子邮件?
Posted
技术标签:
【中文标题】Excel VBA:如何在 Outlook 中向组发送电子邮件?【英文标题】:Excel VBA: How to send email to group in outlook? 【发布时间】:2017-01-09 11:13:46 【问题描述】:我希望自动将电子邮件从 excel vba 发送到 Outlook 2013。
我可以将电子邮件发送给个人并通过 TITUS 分类,但是当我发送到群组电子邮件时仍然收到以下错误。
如何在 VBA 中选择“仍然发送”?
以下是我必须发送电子邮件的代码:
Dim AOMSOutlook As Object
Dim AOMailMsg As Object
Set AOMSOutlook = CreateObject("Outlook.Application")
Dim objUserProperty As Object
Dim OStrTITUS As String
Dim lStrInternal As String
Set AOMailMsg = AOMSOutlook.CreateItem(0)
Set objUserProperty = AOMailMsg.UserProperties.Add("TITUSAutomatedClassification", 1)
objUserProperty.Value = "TLPropertyRoot=ABCDE;Classification=Internal;Registered to:My Companies;"
With AOMailMsg
.To = "mygroup@list.company.com"
.Subject = "my subject"
.Attachments.Add Img
.htmlBody = "my text"
.Save
.Send
End With
Set AOMailMsg = Nothing
Set objUserProperty = Nothing
Set AOMSOutlook = Nothing
Set lOMailMsg = Nothing
Set objUserProperty = Nothing
Set lOMSOutlook = Nothing
非常感谢任何帮助!
【问题讨论】:
这看起来是 Outlook 中的策略设置,而不是编程问题。您可以使用 SendKey.. 当您将其放在代码顶部时是否会弹出此窗口:Application.DisplayAlerts = False
?您可以在代码底部将其设置回True
。
@Chrismas007 我去看看 SendKey
@MattCremeens 我尝试将 DisplayAlerts 设置为 False 并将 EnableEvents 设置为 false,但警告框仍然出现在 Outlook 中
如果你还没有,也可以看看this
【参考方案1】:
感谢@MattCremeens 能够通过添加解决:
.display
SendKeys "DOWNDOWNENTER", True 'set classification
SendKeys "ENTER",True 'send to group
.send
End With
【讨论】:
以上是关于Excel VBA:如何在 Outlook 中向组发送电子邮件?的主要内容,如果未能解决你的问题,请参考以下文章
在 Excel 中使用 VBA,如何在 Outlook 中粘贴表格然后将表格转换为文本?
如何使用 Excel VBA 打开 Outlook excel 附件,在特定时间范围内发送到特定 Outlook 文件夹?
如何更改通过 Excel VBA 代码通过 Outlook 发送的电子邮件的字体格式?
VBA 在 Outlook 中粘贴带有图表的特定 excel 范围