Solved

Delete Outlook Calendar Appointments

Posted on 2016-09-15
2
38 Views
Last Modified: 2016-10-29
I am trying to delete all my Outlook Calendar Appointments within a specific date range. But I don't want to delete any appointments that are set to a recurrence since they could be in the future. I found this code online and it works good except that it will delete the recurrence appointments too. Can anyone help me modify this to NOT include recurrence appointments? My VBA skills are terrible and even worse with Outlook.

Private Function DeleteAppts()
'Declarations
Dim strCurrent As String
Dim objApp As Outlook.Application
Dim objNS As Outlook.NameSpace
Dim objFolder As Outlook.MAPIFolder
Dim objItems As Outlook.Items
Dim objItem As Object
Dim strStart As String
Dim strEnd As String
Dim strFilter As String
'put required start and end dates into strStart and strEnd respectively
'if they are constants then just set them before this
'I created textboxes for users to input the dates themselves
 
strStart = "09/15/2016 07:00 AM"
strEnd = "09/15/2016 16:00 PM"
'create a string to use to filter the outlook items
strFilter = "[Start] >= " & Quote(strStart) & " And [Start] < " & Quote(strEnd)
 
'set the outlook objects and specify the items in the calendar using the filter
Set objApp = CreateObject("Outlook.Application")
Set objNS = objApp.GetNamespace("MAPI")
Set objFolder = objNS.GetDefaultFolder(olFolderCalendar)
Set objItems = objFolder.Items.Restrict(strFilter)
Set objItem = objItems.GetFirst
 
intCount = objItems.Count
For i = intCount To 1 Step -1
    Set objItem = objItems(i)
    objItem.Delete
Next

'clears out outlook objects from memory
Set objApp = Nothing
Set objNS = Nothing
Set objFolder = Nothing
Set objItems = Nothing
Set objItem = Nothing
MsgBox "Items Deleted!"
 
End Function

Function Quote(MyText) As String

    Quote = Chr(34) & MyText & Chr(34)

End Function

Open in new window

0
Comment
Question by:Lawrence Salvucci
2 Comments
 
LVL 2

Accepted Solution

by:
kapsionu earned 500 total points
Comment Utility
Is this some kind of global issue or just personal need? Make it simple, create list view of calendar items with needed fields, sort it, select needed date range, delete, done. Sometimes overthinking is bad for simple tasks. If this is some kind of global need - I would be careful playing with this script.
0

Featured Post

Zoho SalesIQ

Hassle-free live chat software re-imagined for business growth. 2 users, always free.

Join & Write a Comment

Get an idea of what you should include in an email disclaimer with these Top 5 email disclaimer tips.
Following basic email etiquette rules will help you write a professional email and achieve a good, lasting impression with your contacts.
This Experts Exchange video Micro Tutorial shows how to tell Microsoft Office that a word is NOT spelled correctly. Microsoft Office has a built-in, main dictionary that is shared by Office apps, including Excel, Outlook, PowerPoint, and Word. When …
To add imagery to an HTML email signature, you have two options available to you. You can either add a logo/image by embedding it directly into the signature or hosting it externally and linking to it. The vast majority of email clients display l…

771 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

11 Experts available now in Live!

Get 1:1 Help Now