BCC в событии ItemSend в Outlook 2007 больше не работает

Я ввел код в ItemSend и сохраненный модуль ThisOutlookSession. Это работало однажды и больше не работает. Это было сохранено как VBAproject. OTM и все еще там, когда я открываю модуль после перезапуска Outlook.

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
5
задан 0m3r 21 January 2018 в 08:39
поделиться

2 ответа

Если вы подключаете событие ItemSend , оно должно быть в модуле класса с WithEvents и ваш код, чтобы вызвать его в обычном модуле. Кроме того, вы можете выполнить Item.Save в сообщении, которое будет сохранено в BCC.

2
ответ дан 14 December 2019 в 19:09
поделиться

используйте оператор and if в поле Тема элемента

Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)

If Item.Subject = "exact match" Then

    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
    Item.Save

    Set objRecip = Nothing


End If

или используйте, если вы хотите, чтобы a содержало слово в теме

If InStr(Item.Subject, "BCCSubject") = 0 Then


End If
3
ответ дан 14 December 2019 в 19:09
поделиться
Другие вопросы по тегам:

Похожие вопросы: