Outlook 2007 VBA - BCC в зависимости от получателей To/CC

Я ищу, чтобы создать правило, которое будет условно добавлять получателя BCC в зависимости от имени домена получателей To / CC. Я уже определил этот вопрос как нечто похожее, но, похоже, он не был решен.

Начальный код как ниже:

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 = "SomeEmailAddress@domain.com"

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

В псевдокоде я ищу, чтобы добавить следующие условия в строку strBCC:

If ToCCRecipientDomain = "@example1.co.uk"
  Then strBCC = "email1@trello.com"
ElseIf ToCCRecipientDomain ="@example2.co.uk"
  Then strBCC = "email2@trello.com"
ElseIf ToCCRecipientDomain ="@example3.co.uk"
  Then strBCC = "email3@trello.com"
Else
  Then Cancel = True
End If

Для тех, кто заинтересован в приложении / причинах этого, я собираюсь создать список электронных писем, отправленных клиенту на Trello Board для конкретного проекта, который будет зависеть от адреса электронной почты, на который они отправляются.

1 ответ

Я думаю, что я близок к этому, как показано ниже, просто добавив дополнительные строки If & EndIf, когда требуются дополнительные условия.

If InStr(Item.Recipients.Address, "@example1.co.uk") Then
    strBcc = "email1@trello.com"
If InStr(Item.Recipients.Address, "@example2.co.uk") Then
    strBcc = "email2@trello.com"
Else
    Cancel = True
End If
End If
Другие вопросы по тегам