Since then Iâve expanded upon it slightly on my own computer: in addition to the option to prevent meetings from being forwarded, Iâve added similar buttons to the new email toolbar that can prevent forwarding, replying or replies to all.
Preventing people from hitting âreply allâ is sometimes a great tactic if youâre sending an email to particularly large group and you donât want everybody to get caught up in any follow-up. By contrast, preventing replies (thus forcing people to use âreply allâ instead) is great if you want the opposite, and for everyone to be kept in the loop.
My previous post details the process of setting all this up, but below is the code for the four macros. The first disables forwarding, the second disables replies, the third disables reply all and the final re-enables all response options. By default, nothing is disabled on new items unless you hit the relevant button to run the macro.
Enjoy!
Sub DisableForwarding()
ActiveInspector.CurrentItem.Actions("Forward").Enabled = False
X = MsgBox("Forwarding of this item has been disabled", vbInformation, "Forwarding Disabled")
End Sub
Sub DisableReply()
ActiveInspector.CurrentItem.Actions("Reply").Enabled = False
X = MsgBox("Replies to this item have been disabled", vbInformation, "Forwarding Disabled")
End Sub
Sub DisableReplyAll()
ActiveInspector.CurrentItem.Actions("Reply to All").Enabled = False
X = MsgBox("Reply All has been disabled for this item", vbInformation, "Forwarding Disabled")
End Sub
Sub EnableAllResponses()
ActiveInspector.CurrentItem.Actions("Forward").Enabled = True
ActiveInspector.CurrentItem.Actions("Reply").Enabled = True
ActiveInspector.CurrentItem.Actions("Reply to All").Enabled = True
X = MsgBox("Forwarding, Replies and Reply All have been enabled for this item", vbInformation, "Forwarding Disabled")
End Sub
The ability to quickly and easily forward an Outlook meeting
to another recipient is an essential feature. Maybe you canât make it and you
need to send a delegate. Maybe you identify from the invite that bringing along
a colleague whoâs a subject matter expert would be beneficial. There are
probably many other scenarios.
As a meeting organizer though, itâs possible that you donât
want people to be able to forward your meetings. Perhaps the location you have
booked is of a limited size. Perhaps the meeting content is sensitive and
discussion restricted to a particular group. There are probably many other
scenarios for wanting to keep tight control over the recipient list too.
Well, good news! Iâve recently discovered this is possible,
and with just a few lines of VBA you can create meetings that have the
âforwardâ button disabled. If a recipient wants to extend the invite to someone
else, they have to come back to you and ask that you do it for them.
Itâs worth pointing out right at the top that this technique
only works in the Microsoft Outlook desktop client. You have to be using it,
and so do the meeting recipients. If your recipients also have their
email/calendar available to them on another client (including mobile devices
and webmail) then
they can use the other client to
forward the meeting.
Itâs also worth pointing out that full credit for this goes
to user GranEYb
on Microsoftâs TechNet
forums. I have merely tidied up his/her instructions, and turned them into
a quick screencast. The instructions are for Outlook 2013. I know the code also
works in Outlook 2010. I havenât tested it with other versions. YMMV.
Screencast
Instructions
First, enable developer tools in Outlook:
Open Outlook 2013
Click File
-> Options -> Customize Ribbon
In the right-hand pane, place a checkmark next
to the Developer group and click OK
Open Visual Basic for Applications and write the code:
Navigate to the Developer tab on the ribbon, and
select Visual Basic
In the Visual Basic for Applications window,
click Insert -> Module
Copy the code from below, and choose File -> Save, or click the Save
icon
Close the Visual Basic for Applications window
The code:
Sub DisableForwarding()
ActiveInspector.CurrentItem.Actions("Forward").Enabled = False
MsgBox "Forwarding of this item has been disabled"
End Sub
Sub EnableForwarding()
ActiveInspector.CurrentItem.Actions("Forward").Enabled = True
MsgBox "Forwarding of this item has been enabled"
End Sub
Create the
buttons in Outlook:
Open
Outlook calendar
Click New Appointment
Click File -> Options -> Customize
Ribbon
In
the right-hand pane, select the Appointment tab and click New Group
Select
the New Group (Custom) item and click Rename
In
the Display Name box, enter Forward
Control. Click OK
In
the left-hand pane, select the Choose Commands From: dropdown and select Macros
Select
Project1.DisableForwarding and click the Add
>> button between the panes
Select
Project1.EnableForwarding and click the Add
>> button between the panes
In
the right-hand pane, select Project1.DisableFowarding and click Rename
In
the Display Name box, enter Disable
Forwarding. Click OK
In
the right-hand pane, select Project1.EnableForwarding and click Rename
In
the Display Name box, enter Enable
Forwarding. Click OK
Click OK at the bottom of the Outlook
Options window
All done!
If you wish, you can now hide the developer tab that we enabled with the first
three steps.
To use the
tool, create a new meeting invite as you normally would, but before hitting the
send button hit the Disable Forwarding button first. Recipients of your invite
will find that the Forward button is disabled.
Meetings do
not have forwarding disabled by default, but if you need to re-enable
forwarding for any reason then the Enable Forwarding button is your friend.