我需要根据收件人自动将文本插入外发电子邮件中。我找到了一些代码来回答另一个看起来很有希望的问题(76Mel)。我似乎可以将代码附加到ThisOutlookSession
中的ItemSendPrivate Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
If Item.MessageClass = "IPM.Note" Then
For Each myRecipient In Item.Recipients
If myRecipient.Address = "<EMAIL ADDRESS TO FIND>" Then
<code to add text>
End If
Next
End If
End Sub
将代码添加到电子邮件正文中的代码是什么?这甚至会起作用吗?这封代码会在发送电子邮件之前触发,还是已经太晚了?
我确实需要它自动化(创建一个按钮或手动运行宏实际上不是一个选项;它是一个记忆的东西:如果我记得运行宏,我可以手动添加文本)
答案 0 :(得分:2)
这是你在尝试什么?我添加了评论,所以你不应该有任何问题理解它:)如果你还有一个问题,只需要问......
Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
'~~> Check if it is an email
If TypeName(Item) <> "MailItem" Then Exit Sub
Dim srchString As String, NewText As String
'~~> Email Address which you want to search for
srchString = "abc@gmail.com"
'~~> New text that you want to add
NewText = "Blah Blah"
'~~> Search To, CC, BCC Fields
If InStr(1, Item.To, srchString, vbTextCompare) Or _
InStr(1, Item.CC, srchString, vbTextCompare) Or _
InStr(1, Item.BCC, srchString, vbTextCompare) Then
'~~> Add the relevant text to the body
Item.Body = Item.Body & vbNewLine & NewText
End If
End Sub
我会推荐这个MSDN链接。
主题:MailItem对象成员
链接:http://msdn.microsoft.com/en-us/library/bb176688%28v=office.12%29.aspx
从上方链接引用
表示收件箱文件夹中的邮件。
列出MailItem对象的所有方法/属性