如何使用VBA将Outlook 2007自动BCC消息发送到包含主题中特定单词的特定电子邮件?

时间:2010-04-06 22:00:20

标签: vba outlook outlook-2007 outlook-vba

  

可能重复:
  Outlook VBA to BCC emails sent not working in Outlook 2007

到目前为止,我有来自outlookcode.com的代码,我可以开始发送我发送到BCC电子邮件的所有电子邮件。我不是开发人员,因此我自己编辑这个内容并没有太多的背景,甚至没有接近研究这个。如果有人知道如何检查主题中的单词,或检查主题是否等于某个字符串,我真的很感激。

Private Sub Application_ItemSend(ByVal Item As Object, _
                                 Cancel As Boolean)
    Dim objRecip As Recipient
    Dim strMsg As String
    Dim res As Integer
    Dim strBcc As String
    On Error Resume Next

    ' #### USER OPTIONS ####
    ' address for Bcc -- must be SMTP address or resolvable
    ' to a name in the address book
    strBcc = "someone@somewhere.dom"

    Set objRecip = Item.Recipients.Add(strBcc)
    objRecip.Type = olBCC
    If Not objRecip.Resolve Then
        strMsg = "Could not resolve the Bcc recipient. " & _
                 "Do you want still to send the message?"
        res = MsgBox(strMsg, vbYesNo + vbDefaultButton1, _
                "Could Not Resolve Bcc Recipient")
        If res = vbNo Then
            Cancel = True
        End If
    End If

    Set objRecip = Nothing
End Sub

1 个答案:

答案 0 :(得分:-1)

如果您不想参与VB,可以使用规则向导执行以下操作:

  1. 创建一条规则并将其作为最后一条规则。当您的名称位于“收件人”或“抄送”字段中时,应应用此规则。它应该停止处理后续规则:  第1步:选择条件:我的名字在“收件人”或“抄送”框中。  第2步:选择操作:停止处理更多规则。
  2. 创建另一个规则并将其添加到上面步骤1中规则创建的底部。如下:  第1步:选择条件:我的名字不在“收件人”框中。  第2步:在这里做任何你想要的BCC信息。
  3. 因此,上述步骤的事情是,如果您达到了在步骤2中创建的规则,那是因为您收到了一条消息,其中您的姓名不在“收件人”或“抄送”字段中,即您位于“密件抄送”字段中。

    你只需要这两个规则,因为没有"我的名字不在To或Cc框中的条件"。但我们可以设法对上述解决方法做同样的事情。