Outlook 回复或回复所有电子邮件
Posted
技术标签:
【中文标题】Outlook 回复或回复所有电子邮件【英文标题】:Outlook Reply or ReplyAll to an Email 【发布时间】:2015-10-27 08:25:31 【问题描述】:Set objOutlook = CreateObject("Outlook.Application")
Set objMail = objOutlook.CreateItem(0)
objMail.To = "example@email.com"
objMail.cc = "example2@email.com"
objMail.Subject = "Mail test"
objMail.htmlBody = "This is my message"
unload me
objMail.Display
Set objMail = Nothing
Set objOutlook = Nothing
我正在尝试添加另一个功能来帮助回复选定的电子邮件,但不知道如何将其与 Item As Outlook.MailItem
混合使用
我知道回复电子邮件需要这样做。
所以我想知道如何添加以便我可以选择一封电子邮件,执行宏,它将收件人电子邮件输入到objMail.To
,收件人的正文输入到objMail.HTMLBody
【问题讨论】:
回复时使用Dim Item As Outlook.MailItem
然后Item.Reply
或Item.ReplyAll
嗨奥马尔,谢谢。但它不起作用。 'Dim Item As Outlook.MailItem' 功能是否有助于检测我选择的电子邮件?
您只想回复选定的电子邮件?
是的,如果我误解了我的问题,对不起。我的实际计划是在收件箱中选择一封电子邮件,然后单击宏按钮,这样它就会像单击回复按钮时一样显示所显示的内容,但唯一的区别是输入我的消息(使用 objMail.HTMLBody)电子邮件也是如此。
【参考方案1】:
要简单地Reply 或ReplyAll 选定的消息,请尝试以下操作。
Option Explicit
Sub ReplyMSG()
Dim olItem As Outlook.MailItem
Dim olReply As MailItem ' Reply
Dim olRecip As Recipient ' Add Recipient
For Each olItem In Application.ActiveExplorer.Selection
Set olReply = olItem.ReplyAll
Set olRecip = olReply.Recipients.Add("Email Address Here") ' Recipient Address
olRecip.Type = olCC
olReply.HTMLBody = "Hello, Thank you. " & vbCrLf & olReply.HTMLBody
olReply.Display
'olReply.Send
Next olItem
End Sub
要隐藏收件人,请使用 密件抄送 示例
olRecip.Type = olBcc
要添加多个收件人,只需添加
Set olRecip = olReply.Recipients.Add("Email Here")
Set olRecip = olReply.Recipients.Add("Email Here")
Set olRecip = olReply.Recipients.Add("Email Here")
如果没有收件人,请尝试以下操作。
Option Explicit
Sub ReplyMSG()
Dim olItem As Outlook.MailItem
Dim olReply As MailItem ' Reply
For Each olItem In Application.ActiveExplorer.Selection
Set olReply = olItem.ReplyAll
olReply.HTMLBody = "Hello, Thank you. " & vbCrLf & olReply.HTMLBody
olReply.Display
'olReply.Send
Next olItem
End Sub
【讨论】:
谢谢!但是,默认情况下不显示收件人电子邮件。有没有办法不用键就可以放进去? @ZhengYiChew 看到我更新的答案,-我删除收件人的最后一个代码,这是你问的吗?以上是关于Outlook 回复或回复所有电子邮件的主要内容,如果未能解决你的问题,请参考以下文章