Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Is it possible to create an outlook macro such that when a user presses "Reply to All", there is a prompt saying something like "Your message will be sent to the following recipients: x,y,z. Are you sure? Y/N". The key question here is if there is even a hook available to interrupt the action at all.

Note that I am not looking to disable it or to buy an add-in.

share|improve this question
1  
If that came default in Outlook, imagine all the savings in Inbox flooding! –  digitxp Aug 24 '11 at 19:20
    
Is it that you don't want to use an add-in, or just don't want to use one you have to pay for? –  Ƭᴇcʜιᴇ007 Aug 24 '11 at 20:14
    
It's the cost. I'm looking for a solution that can be deployed to around 100 machines. –  Adam S Aug 25 '11 at 16:14

1 Answer 1

up vote 2 down vote accepted
+50

Note: I'm working on 2007, but I think the code should transfer OK.

You can add an event handler via VBA to pick up the ReplyAll event. Something like the following:

Dim WithEvents insp As Outlook.Inspectors
Dim WithEvents mailItem As Outlook.MailItem

' This is called on Outlook startup
Private Sub Application_Startup()
    Set insp = Application.Inspectors
End Sub

' This is called when a new Inspector is created. You use it to pick up on a new mail item event
Private Sub insp_NewInspector(ByVal Inspector As Inspector)
    If Inspector.CurrentItem.Size = 0 And Inspector.CurrentItem.Class = olMail Then
       Set mailItem = Inspector.CurrentItem
    End If
End Sub

' Called when you press ReplyAll
Private Sub mailItem_ReplyAll(ByVal Response As Object, Cancel As Boolean)
    Dim msg As String
    Dim result As Integer
    msg = "Do you really want to reply to all?"
    result = MsgBox(msg, vbYesNo, "Reply All Check")
    If result = vbNo Then
        Cancel = True
    End If
End Sub
share|improve this answer

protected by Community Feb 11 at 21:29

Thank you for your interest in this question. Because it has attracted low-quality answers, posting an answer now requires 10 reputation on this site.

Would you like to answer one of these unanswered questions instead?

Not the answer you're looking for? Browse other questions tagged or ask your own question.