Como avisar antes de responder a todos no Outlook

0

Isso deve ser muito simples, mas não é.

Eu quero que o Outlook me avise antes de enviar um e-mail responder para todos.

Há um add-in chamado NoReply para todos, mas isso ainda requer que o usuário ative a não-resposta a todas as sessões, o que basicamente anula sua finalidade.

O código abaixo funciona, mas se aplica a todas as respostas, e eu quero aplicá-lo apenas para re-para todos.

Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
    If MsgBox("Do you want to continue sending the mail?", vbOKCancel) <> vbOK Then
        Cancel = True
    End If
End Sub

O exemplo da Microsoft deve funcionar, mas não funciona:

Public WithEvents myItem As MailItem
Sub Initialize_Handler()
 Set myItem = Application.ActiveInspector.CurrentItem
End Sub
Private Sub myItem_ReplyAll(ByVal Response As Object, Cancel As Boolean)
    Dim mymsg As String
    Dim myResult As Integer
    mymsg = "Do you really want to reply to all original recipients?"
    myResult = MsgBox(mymsg, vbYesNo, "Flame Protector")
    If myResult = vbNo Then
       Cancel = True
    End If
End Sub

Outras soluções não são gratuitas.

Alguma ajuda?

    
por Martien Lubberink 22.10.2017 / 21:48

1 resposta

0

Encontrado, e inclui uma verificação para impedir o envio para uma lista específica:

Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
Dim str As String
Dim j As Integer
Dim splits() As String
Dim lbadFound  As Boolean
lbadFound = False
Set Recipients = Item.Recipients
receivers = Recipients.count
For i = receivers To 1 Step -1
    Set recip = Recipients.Item(i)
    If InStr(1, LCase(recip), "lists.bla.com") >= 1 Then
        lbadFound = True
    End If
Next i
splits = Split(Item.To, ";")
If receivers > 1 Or lbadFound Or UBound(splits) > 0 Then
    If MsgBox("Do you want to continue sending the mail?", vbOKCancel) <> vbOK Then
        Cancel = True
    End If
End If

End Sub

    
por 24.10.2017 / 03:51