Set myNameSpace = myOlApp.GetNamespace("MAPI")
Set myInbox = myNameSpace.GetDefaultFolder(olFolderInbox)
Set myitems = myInbox.Items
For Each myitem In myitems
If myitem.Class = olMail Then
If InStr(1, myitem.Subject, "Hi") > 0 Then
If myitem.Sender.GetExchangeUser.PrimarySmtpAddress = "xyz@abc.com" Then
With myitem.Forward
.Recipients.Add "pqr@abc.com"
.CC = "xyz@abc.com"
.Body = "Hey,there"
.Send
End With
End if
End if
End if
Next myitem
基本上,如果我从 xyz 获得" 的最后一封主题电子邮件,那么我想转发到 pqr 和 CC xyz 。 Everthing工作正常,但转发的消息不是原始消息,但它只是组成一个新的电子邮件。除了从 xyz 收到的内容之外,我总是希望在转发电子邮件时添加内容。任何人都可以帮忙。感谢。
编辑: - 如果我在使用myitem.Forward 之后立即显示一个显示命令,它会显示整个帖子,但是一旦我添加了收件人和正文,它就会消失并转入新的电子邮件。另外我认为它可以将 .body 解释为整个新体,我应该找到一些可以添加到现有体内的东西。
答案 0 :(得分:2)
如果您需要保留现有消息,则应在现有属性值之前插入文本(如果是纯文本电子邮件)。
.Body = "Hey,there" + .Body
或者将HTML标记注入<body>
元素以保持HTML标记格式正确。
Outlook对象模型提供了三种使用项主体的主要方法:
您可以在Chapter 17: Working with Item Bodies中详细了解所有这些方式。我们由您决定选择自定义邮件正文。