3

我需要根据收件人自动将文本插入到外发电子邮件中。我在另一个看起来很有希望的问题(归功于 76Mel)的答案中找到了一些代码。看来我可以将代码附加到 ThisOutlookSession 中的 ItemSend

Private 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 

将文本添加到电子邮件正文的代码是什么 - 这甚至会起作用吗?此代码会在电子邮件发送之前触发,还是已经太晚了?

我确实需要它是自动化的(创建一个按钮或手动运行宏并不是一个真正的选择;这是一个记忆问题:如果我记得运行宏,我可以手动添加文本)

4

1 回答 1

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 对象的所有方法/属性

于 2012-06-29T16:19:12.603 回答