Outlook Reply 或 ReplyAll 电子邮件

Outlook Reply or ReplyAll to an Email

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

我正在尝试添加另一个有助于回复 selected 电子邮件的功能,但不知道如何将其与 Item As Outlook.MailItem 混合使用 我知道回复电子邮件需要这样做。

所以我想知道如何添加,以便我可以 select 一封电子邮件,执行宏,它将收件人电子邮件输入 objMail.To 并将收件人的正文输入 objMail.HTMLBody

要简单地 Reply or 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

要隐藏收件人,请使用 BCC 例子

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