4

可能重复:
发送的 Outlook VBA 到密件抄送电子邮件在 Outlook 2007 中不起作用

到目前为止,我从 outlookcode.com 获得了这段代码,我可以开始工作,将我发送到密件抄送电子邮件的所有电子邮件发送出去。我不是开发人员,所以我没有太多的背景可以自己编辑这个,甚至没有接近研究这个。如果有人知道如何检查主题中的单词,或者检查主题是否等于某个字符串,我将不胜感激。

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
4

1 回答 1

-1

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

  1. 创建一条规则并将其作为最后一条规则。当您的姓名在“收件人”或“抄送”字段中时,应应用此规则。并且它应该停止处理后续规则: 第 1 步:选择条件:我的姓名在“收件人”或“抄送”框中。第 2 步:选择操作:停止处理更多规则。
  2. 创建另一个规则并将其添加到上面步骤 1 中创建规则的底部。如下所示: 第 1 步:选择条件:我的姓名不在收件人框中。第 2 步:在此处对您的密件抄送信息做任何您想做的事情。

因此,上述程序的问题是,如果您达到了在步骤 2 中创建的规则,是因为您收到一条消息,其中您的姓名不在“收件人”或“抄送”字段中,即您在“密件抄送”字段中。

您只需要这两条规则,因为没有“我的名字不在收件人或抄送框中”这样的条件。但是我们可以通过上述解决方法来做同样的事情。

于 2011-11-28T12:45:02.220 回答