O Outlook 2016 usa o VBA para verificar o remetente / endereço de e-mail e uma frase no corpo e assunto antes de enviar

0

Eu encontrei este verificador de frases no corpo de um email do Outlook aqui , que funciona na perfeição.

O código compartilhado no link acima é o seguinte:

Public Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
    On Error Resume Next
    If InStr(Item.Body, "(Client Name)") Then
        If MsgBox("Are you sure to send this message?", vbYesNo + vbQuestion + vbMsgBoxSetForeground, "Message Text Warning") = vbNo Then
            Cancel = True
        End If
    End If
End Sub

Mas meu requisito atual é verificar um e-mail do Outlook de saída para os seguintes critérios:

Se o corpo contiver um texto específico E Se o endereço de envio / de e-mail for um dos poucos endereços específicos.

Em seguida, pergunte ao usuário se o usuário ainda deseja enviar este e-mail por meio do endereço específico (de preferência, mostre o endereço de envio / envio de e-mail aqui)?

Atualização de 1º de janeiro de 2017 :

O texto a seguir ajuda a verificar o endereço de e-mail do qual estou enviando o e-mail:

InStr(LCase(Item.SendUsingAccount), "[email protected]")

Mas quando eu tento usá-lo com a declaração If anterior, então não funciona, então agora é o próximo desafio que estou tentando resolver:

If InStr(Item.Body, "(Client Name)") And InStr(LCase(Item.SendUsingAccount), "[email protected]") Then

Em outras palavras, os dois critérios If não estão funcionando se forem executados juntos (não importa qual deles eu coloquei primeiro e qual deles como segundo), mas se eles forem executados separadamente (single), eles funcionarão muito bem.

    
por Xeirus 31.12.2016 / 10:53

0 respostas