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