问题描述
我将此代码发送到 vba Outlook 宏以回复所有内容。
Sub my_test()
Dim objItem As Object
Dim mail As MailItem
Dim replyall As MailItem
Dim templateItem As MailItem
For Each objItem In ActiveExplorer.Selection
If objItem.Class = olMail Then
Set mail = objItem
Set replyall = mail.replyall
Set templateItem = CreateItemFromTemplate("C:\template.oft")
With replyall
.HTMLBody = templateItem.HTMLBody & .HTMLBody
.display
End With
End If
Next
End Sub
我正在尝试添加一个功能,以便当原始电子邮件带有附件(docx,pdf)时,当我使用此宏回复所有内容时,它也会使用原始附件并将其作为附件放在回复所有电子邮件中. 我怎样才能做到这一点?
解决方法
转发然后用 ReplyAll 中出现的内容填充 .To
。
Option Explicit
Sub my_test()
Dim objItem As Object
Dim mail As MailItem
Dim forwardMail As MailItem
Dim templateItem As MailItem
For Each objItem In ActiveExplorer.Selection
If objItem.Class = olMail Then
Set mail = objItem
Set forwardMail = mail.Forward
Set templateItem = CreateItemFromTemplate("C:\template.oft")
With forwardMail
.HTMLBody = templateItem.HTMLBody & .HTMLBody
.To = mail.replyall.To
.Display
End With
End If
Next
End Sub