【问题标题】:Outlook - insert text based on recipientOutlook - 根据收件人插入文本
【发布时间】:2020-06-24 05:55:01
【问题描述】:

我需要根据收件人自动将文本插入到外发电子邮件中。我在另一个看起来很有希望的问题(归功于 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 

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

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

【问题讨论】:

    标签: vba outlook


    【解决方案1】:

    这是你正在尝试的吗?我已经添加了 cmets,所以您理解它应该没有任何问题 :) 如果您仍有问题,请直接问...

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

    【讨论】:

    • 这很好,但您的代码不会检查外发项目是否是电子邮件。
    • 谢谢您-您的代码很清楚。这似乎是我所追求的 - 我将代码复制到 Itemsend & 测试中,但我的文本没有添加。我什至删除了对电子邮件的检查(理论上它会在所有电子邮件中添加文本),但它仍然没有添加文本。
    • @JP" 好点。我会尽快更新它。@Chip:我已经测试了代码并且它有效。我可以看到你尝试的确切代码吗?
    • @Chip 粘贴代码后,重启 Outlook。在代码中设置断点,然后发送一封电子邮件,触发If 语句。
    • 我未能重新启动 Outlook - 现在一切正常。很难夸大你今天对我的帮助 - 谢谢!。
    猜你喜欢
    • 2010-10-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多