Microsoft KB Archive/201101

= How to use the Outlook object model to retrieve all recurring appointments =

Article ID: 201101

Article Last Modified on 2/12/2007

-

APPLIES TO


 * Microsoft Office Outlook 2003
 * Microsoft Outlook 2002 Standard Edition
 * Microsoft Outlook 2000 Standard Edition

-



This article was previously published under Q201101



INTRODUCTION
When you are writing programming code that retrieves a set of calendar appointments in Microsoft Outlook, recurring appointments are not automatically included in the collection of appointment items. If you want to retrieve all the recurring appointments, you must set the collection's IncludeRecurrences property to True.



MORE INFORMATION
Microsoft provides programming examples for illustration only, without warranty either expressed or implied. This includes, but is not limited to, the implied warranties of merchantability or fitness for a particular purpose. This article assumes that you are familiar with the programming language that is being demonstrated and with the tools that are used to create and to debug procedures. Microsoft support engineers can help explain the functionality of a particular procedure, but they will not modify these examples to provide added functionality or construct procedures to meet your specific requirements.

In Outlook, you can create a recurring appointment, such as a meeting that occurs every Monday. Using Microsoft Visual Basic Scripting Edition (VBScript) or Microsoft Visual Basic for Applications code, you can do either of the following:
 * Use the whole items collections to access all of the appointments.
 * Use the Restrict method to retrieve a subset of the appointments.

For example, assume a recurring appointment was originally created on the first Monday in January and the appointment was set to recur on every Monday thereafter. If you do not use the IncludeRecurrences property, the only appointment in January to be returned would be the first Monday. Subsequently, if you retrieve the appointments in February, none of the recurring appointments are retrieved.

When programmatically referring to a group of appointments, these items are part of the Items collection object. Once you have set an object variable to the whole collection of items, you can then use the IncludeRecurrences property to optionally include all the recurring appointments. Next you would typically use the Restrict method if you want to use a subset of the whole collection. Then you could optionally sort the collection.

The following automation example assumes you have already set up one recurring appointment in your calendar and that you have the Calendar folder selected. Because it does not use the Restrict method, it will return all appointments in the Calendar. Sub GetRecurrences

Set myOlApp = New Outlook.Application

' Set myItems to all of the items in the folder. The Calendar ' folder must be selected before running this code. Set myItems = myOlApp.ActiveExplorer.CurrentFolder.Items

' Set the IncludeRecurrences property to make sure all of the ' recurring appointments are also included in the collection. myItems.IncludeRecurrences = True

' Sort the collection based on the start of the appointment. myItems.Sort "[Start]"

' Display one of the recurring appointments which have been included. MsgBox "The fifth instance of the recurring appointment " & _ "occurs on:" & myItems.Item(5).Start

End Sub

Additional query words: OutSol OutSol2000 OL2K OutSol2002 OutSol2003

Keywords: kbdtacode kbhowto kbprogramming KB201101

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.