Note: The other languages of the website are Google-translated. Back to English
English English

How to automatically decline meeting invites from specific people in Outlook? 

In Outlook, we can create a rule to decline some meeting invites from specific people automatically, but, how to deal with it? This article will introduce a method in details.

Decline meeting invites from specific people automatically in Outlook

Decline meeting invites from specific people automatically and delete the meeting from calendar as well


Decline meeting invites from specific people automatically in Outlook

Please do with the following steps to finish this job:

1. First, you should create a message template for the decline meeting invites. In the Message window, type the message you want to send for declining the meeting invites. See screenshot:

2. Then save the message as template format, please click File > Save As, in the Save As window, enter a name for the message into the File name text box, and then choose Outlook Template(*.oft) from the Save as type drop down list, see screenshot:

Note: When you select Outlook Template(*.oft), a default user template folder will be opened.

3. Then click Save button to save the message template, and close the message window.

4. And then, you can create a rule. Please click Rules > Manage Rules & Alerts under the Home tab, see screenshot:

5. In the Rules and Alerts dialog box, click New Rule from the E-mail Rules tab, see screenshot:

6. In the popped out Rules Wizard, click Apply rule on message I receive option under the Start from a blank rule section, see screenshot:

7. Then click Next button, and in the popped out dialog box, check from people or public group in the Step1: Select condition(s) list box, and then click the text link people or public group to open the Rule Address dialog box, and select the people which you want to decline the meeting from, see screenshot:

8. Click OK button, still in this dialog box, please scroll to check which is a meeting invitation or update option from the Step1: Select condition(s) list box, see screenshot:

9. Go on clicking Next button, in the following dialog box:

(1.) Check reply using a specific template option in Step1: Select action(s) list box;

(2.) And then click the text link a specific template to open the Select a Reply Template dialog box;

(3.) In the Select a Reply Template dialog box, choose User Templates in Files System from the Look In drop down;

(4.) Then select the message name you have created just now;

(5.) Click Open button.

10. Go back to the original dialog box, go on checking delete it option in the Step1: Select action(s) list box, see screenshot:

11. The click Next > Next to go the last step dialog. In the Finish rule setup section, specify a name for this rule, and check Turn on this rule option from the Step2: Setup rule options, see screenshot:

12. Click Finish button to finish this rule, then click OK to close the dialog box.

13. From now on, when receiving the meeting from this specific people, a decline email will be sent to him automatically, and the meeting message will be deleted as well.


Decline meeting invites from specific people automatically and delete the meeting from calendar as well

The first method helps to send an email telling the person that you will not attend the meeting, but the meetings will always be displayed in your calendar. If you need to delete the meetings which appear in your calendar at the same time, the following VBA code can do you a favor.

1. Hold down the ALT + F11 keys to open the Microsoft Visual Basic for Applications window.

2. In the Microsoft Visual Basic for Applications window, double click ThisOutlookSession from the Project1(VbaProject.OTM) pane to open the module, and then copy and paste the following code into the blank module.

VBA code: Automatically decline meeting invites and delete the meetings from calendar as well:

Private Sub Application_NewMailEx(ByVal EntryIDCollection As String)
Dim xEntryIDs
Dim xItem
Dim i As Integer
Dim xMeeting As MeetingItem, xMeetingDeclined As MeetingItem
Dim xAppointmentItem As AppointmentItem
On Error Resume Next
xEntryIDs = Split(EntryIDCollection, ",")
For i = 0 To UBound(xEntryIDs)
    Set xItem = Application.Session.GetItemFromID(xEntryIDs(i))
    If xItem.Class = olMeetingRequest Then
        Set xMeeting = xItem
        xMeeting.ReminderSet = False
        If VBA.LCase(xMeeting.SenderEmailAddress) = VBA.LCase("yy@addin99.com") Then 'Specify the person you need
            Set xAppointmentItem = xMeeting.GetAssociatedAppointment(True)
            xAppointmentItem.ReminderSet = False
            Set xMeetingDeclined = xAppointmentItem.Respond(olMeetingDeclined)
            xMeetingDeclined.Body = "Dear, " & vbCrLf & _
                                    "I am not at office. " & vbCrLf & _
                                    "I'm sorry that I will not attend the meeting invitations."
            xMeetingDeclined.Send
            xMeeting.Delete
        End If
    End If
Next
End Sub

3. Then, save and close this code window. From now on, if there are meetings from this specific person, he will receive a declined email and the meeting will be deleted from your calendar automatically.


Kutools for Outlook - Brings 100 Advanced Features to Outlook, and Make Work Much Easier!

  • Auto CC/BCC by rules when sending email; Auto Forward Multiple Emails by custom; Auto Reply without exchange server, and more automatic features...
  • BCC Warning - show message when you try to reply all if your mail address is in the BCC list; Remind When Missing Attachments, and more remind features...
  • Reply (All) With All Attachments in the mail conversation; Reply Many Emails in seconds; Auto Add Greeting when reply; Add Date into subject...
  • Attachment Tools: Manage All Attachments in All Mails, Auto Detach, Compress All, Rename All, Save All... Quick Report, Count Selected Mails...
  • Powerful Junk Emails by custom; Remove Duplicate Mails and Contacts... Enable you to do smarter, faster and better in Outlook.
shot kutools outlook kutools tab 1180x121
shot kutools outlook kutools plus tab 1180x121
 

 

Comments (23)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
This seems to just send a email telling the person that you are declining, but it still appears in your calendar as a tentative meeting (as default) until you press the decline button. Is there a way to actually decline the meeting request as if you were pressing the 'decline' button so it doesn't then appear in you calendar?
This comment was minimized by the moderator on the site
What I'm looking for is a way to stop the meeting from blocking up my calendar, not just sending an email to say I won't attend. Is there no way to do that?
This comment was minimized by the moderator on the site
I'm also looking for is a way to stop the meeting from blocking up my calendar, not just sending an email to say I won't attend. Is there no way to do that?
This comment was minimized by the moderator on the site
This doesn't decline the meeting, it just sends an email. I need it to not have the meeting appear on my calendar.
This comment was minimized by the moderator on the site
Hello, Ben,
This article has been updated , you can use the second method to solve your problem.
Please try, thank you!
This comment was minimized by the moderator on the site
If I would like to use the second method (delete meeting from calendar) but I need it to filter on the invite coming from a specific person and the subject containing a keyword I would like to decline the meeting and not have it block my calendar. The use case is that I cam constantly getting meeting invites from someone who is conducting webinars. I would like to decline all meetings from this person if the subject line contains webinar. I would not like to automatically decline all meetings from this one person (as some of them are important) and I would also not like to decline all meeting with the word webinar in the subject line as some of them are important.

Any assistance anyone can provide will be greatly appreciated.
This comment was minimized by the moderator on the site
Hello, Todd,
To add a subject criteria, please apply the following code:
Private Sub Application_NewMailEx(ByVal EntryIDCollection As String)
Dim xEntryIDs
Dim xItem
Dim i As Integer
Dim xMeeting As MeetingItem, xMeetingDeclined As MeetingItem
Dim xAppointmentItem As AppointmentItem
On Error Resume Next
xEntryIDs = Split(EntryIDCollection, ",")
For i = 0 To UBound(xEntryIDs)
    Set xItem = Application.Session.GetItemFromID(xEntryIDs(i))
    If xItem.Class = olMeetingRequest Then
        Set xMeeting = xItem
        xMeeting.ReminderSet = False
        If (VBA.LCase(xMeeting.SenderEmailAddress) = VBA.LCase("yy@addin99.com")) And _
           (VBA.InStr(xMeeting.Subject, "product") <> 0) Then   'Specify the person and keyword you need
            Set xAppointmentItem = xMeeting.GetAssociatedAppointment(True)
            xAppointmentItem.ReminderSet = False
            Set xMeetingDeclined = xAppointmentItem.Respond(olMeetingDeclined)
            xMeetingDeclined.Body = "Dear, " & vbCrLf & _
                                    "I am not at office. " & vbCrLf & _
                                    "I'm sorry that I will not attend the meeting invitations."
            xMeetingDeclined.Send
            xMeeting.Delete
        End If
    End If
Next
End Sub

Please have a try, hope it can help you!
This comment was minimized by the moderator on the site
Si possono rifiutare riunioni in sovrapposizione con più del 25% di una riunione ricorrente?
Io setto la pausa pranzo come un appuntamento ricorrente in una data fascia oraria. Io vorrei che in automatico meeting che si sovrappongono con più del 25% della pausa pranzo venissero rifiutati con un messaggio del tipo "non accetto meeting in pausa pranzo".
This comment was minimized by the moderator on the site
Hello, Manzon
Sorry, at present, the code in our article doesn't solve your problem yet.
Thank you!
This comment was minimized by the moderator on the site
Hi

How can I run this VB script for existing calendar invites as well ?

Thanks
This comment was minimized by the moderator on the site
skyyang I would appreciate your help on this.
This comment was minimized by the moderator on the site
Hello, Yogesh D
Do you mean to decline meeting invites from a specific people and remove all the meetings (both incoming and already existing) from the calendar?
Thank you!
This comment was minimized by the moderator on the site
Yes, deleting new and existing invites. Both.
This comment was minimized by the moderator on the site
Hello, Yogesh D
To solve your problem, please apply the below code:
Private Sub Application_NewMailEx(ByVal EntryIDCollection As String)
Dim xEntryIDs
Dim xItem
Dim i As Integer
Dim xMeeting As MeetingItem, xMeetingDeclined As MeetingItem
Dim xAppointmentItem As AppointmentItem
Dim xStore As Store
On Error Resume Next
xEntryIDs = Split(EntryIDCollection, ",")
For i = 0 To UBound(xEntryIDs)
    Set xItem = Application.Session.GetItemFromID(xEntryIDs(i))
    If xItem.Class = olMeetingRequest Then
        Set xMeeting = xItem
        xMeeting.ReminderSet = False
        If VBA.LCase(xMeeting.SenderEmailAddress) = VBA.LCase("yy@addin99.com") Then 'Specify the person you need
            Set xAppointmentItem = xMeeting.GetAssociatedAppointment(True)
            xAppointmentItem.ReminderSet = False
            Set xMeetingDeclined = xAppointmentItem.Respond(olMeetingDeclined)
            xMeetingDeclined.Body = "Dear, " & vbCrLf & _
                                    "I am not at office. " & vbCrLf & _
                                    "I'm sorry that I will not attend the meeting invitations."
            xMeetingDeclined.Send
            xMeeting.Delete
        End If
    End If
Next
For Each xStore In Application.Session.Stores
    For Each xAppointmentItem In xStore.GetDefaultFolder(olFolderCalendar).Items
        Select Case VBA.LCase$(xAppointmentItem.GetOrganizer.Address)
            Case VBA.LCase$("yy@addin99.com")   'Specify the person you need
                xAppointmentItem.Delete
        End Select
    Next
Next
End Sub

Please have a try, hope it can help you!
This comment was minimized by the moderator on the site
skyyang I get lots of emails from an automated and unmanned inbox, so I don't want to send a reply to them about declining the meeting. Would I instead just cut out the .Body and .Send segments and use this?:
Private Sub Application_NewMailEx(ByVal EntryIDCollection As String)
Dim xEntryIDs
Dim xItem
Dim i As Integer
Dim xMeeting As MeetingItem, xMeetingDeclined As MeetingItem
Dim xAppointmentItem As AppointmentItem
On Error Resume Next
xEntryIDs = Split(EntryIDCollection, ",")
For i = 0 To UBound(xEntryIDs)
Set xItem = Application.Session.GetItemFromID(xEntryIDs(i))
If xItem.Class = olMeetingRequest Then
Set xMeeting = xItem
xMeeting.ReminderSet = False
If VBA.LCase(xMeeting.SenderEmailAddress) = VBA.LCase("yy@addin99.com") Then 'Specify the person you need
Set xAppointmentItem = xMeeting.GetAssociatedAppointment(True)
xAppointmentItem.ReminderSet = False
Set xMeetingDeclined = xAppointmentItem.Respond(olMeetingDeclined)
xMeeting.Delete
End If
End If
Next
End Sub


Cheers,
This comment was minimized by the moderator on the site
Hello, D
What do you mean the automated and unmanned inbox?
Could you explain it more detailed, thank you!
This comment was minimized by the moderator on the site
Hello,

Thank you for sharing. Could you please update the VBL with more options? I need to decline and remove from my calendar meeting invites with the following:
- from specific people - already covered in your VBL
- with specific words in the body
- with specific words in the subject
- except if sent to people or public group
- except if my name is in the To or CC box
- except if it marked as importance
- except if the subject contains specific words

About this part:
f VBA.LCase(xMeeting.SenderEmailAddress) = VBA.LCase("yy@addin99.com") Then 'Specify the person you need

I will replace the yy@addin99.com with the sender I need to filter and decline the invites from but I don't understand if I need to replace this part with anything specific " Specify the person you need" or just leave as is?
This comment was minimized by the moderator on the site
I have the same question as Dan about "Then 'Specify the person you need"

Thank you!
This comment was minimized by the moderator on the site
Hello, Rriela,
In the code, you juse need to change the sender address "yy@addin99.com" to the sender that you want to decline the invites from.
'Specify the person you need :This text is only annotation, you can leave or delete it as you need.
This comment was minimized by the moderator on the site
Okay thank you! I did mine like this:

Private Sub Application_NewMailEx(ByVal EntryIDCollection As String)
Dim xEntryIDs
Dim xItem
Dim i As Integer
Dim xMeeting As MeetingItem, xMeetingDeclined As MeetingItem
Dim xAppointmentItem As AppointmentItem
On Error Resume Next
xEntryIDs = Split(EntryIDCollection, ",")
For i = 0 To UBound(xEntryIDs)
Set xItem = Application.Session.GetItemFromID(xEntryIDs(i))
If xItem.Class = olMeetingRequest Then
Set xMeeting = xItem
xMeeting.ReminderSet = False
If VBA.LCase(xMeeting.SenderEmailAddress) = VBA.LCase("123@fake.ca") Then 'Specify the person you need
Set xAppointmentItem = xMeeting.GetAssociatedAppointment(True)
xAppointmentItem.ReminderSet = False
Set xMeetingDeclined = xAppointmentItem.Respond(olMeetingDeclined)
xMeetingDeclined.Body = "Dear Fake, " & vbCrLf & _
"I will not attend this meeting. Thank you."
xMeetingDeclined.Send
xMeeting.Delete
End If
End If
Next
End Sub

But I wonder if there is a way to decline the meeting and delete it from my calendar WITHOUT sending a response? Can I just delete this part:
Set xMeetingDeclined = xAppointmentItem.Respond(olMeetingDeclined)
xMeetingDeclined.Body = "Dear Fake, " & vbCrLf & _
"I will not attend this meeting. Thank you."

Thank you so much for your help
This comment was minimized by the moderator on the site
Hi, skyyang
Thank you for your information.

I have one question about this.
If i don't want to repley email of attending, which code can i use ?
Could you please update with this option?
This comment was minimized by the moderator on the site
Hi, skyyang
Thank you for your information.

I have one question about this.
If i don't want to repley email of attending, which code can i use ?
Could you please update with this option?
This comment was minimized by the moderator on the site
Hello, dedn,
To remove the meetings but don't send a response, please apply the below code:
Private Sub Application_NewMailEx(ByVal EntryIDCollection As String)
Dim xEntryIDs
Dim xItem
Dim i As Integer
Dim xMeeting As MeetingItem, xMeetingDeclined As MeetingItem
Dim xAppointmentItem As AppointmentItem
On Error Resume Next
xEntryIDs = Split(EntryIDCollection, ",")
For i = 0 To UBound(xEntryIDs)
    Set xItem = Application.Session.GetItemFromID(xEntryIDs(i))
    If xItem.Class = olMeetingRequest Then
        Set xMeeting = xItem
        xMeeting.ReminderSet = False
        If VBA.LCase(xMeeting.SenderEmailAddress) = VBA.LCase("yy@addin99.com") Then 'Specify the person you need
            Set xAppointmentItem = xMeeting.GetAssociatedAppointment(True)
            'xAppointmentItem.ReminderSet = False
            'Set xMeetingDeclined = xAppointmentItem.Respond(olMeetingDeclined)
            'xMeetingDeclined.Body = "Dear, " & vbCrLf & _
                                    "I am not at office. " & vbCrLf & _
                                    "I'm sorry that I will not attend the meeting invitations."
            'xMeetingDeclined.Send
            xAppointmentItem.Delete
            xMeeting.Delete
        End If
    End If
Next
End Sub

Please have a try, hope it can help you!
There are no comments posted here yet
Leave your comments
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations