Manipuler les rendez-vous Outlook en VBA

Manipuler les rendez-vous Outlook avec du VBA, depuis Excel ou autre.

Code de base

Depuis Excel, Word, etc…

Dim oOL As New Outlook.Application
Dim oNS As Outlook.Namespace
 Set oNS = oOL.GetNamespace("MAPI")

Pour lister les rendez-vous :

Dim oAppointments As Object
 Set oAppointments = oNS.GetDefaultFolder(olFolderCalendar)
 For Each oAppointmentItem In oAppointments.Items
  'On affiche le sujet (objet) des rendez-vous
  Debug.Print oAppointmentItem.Subject
 Next

Pour lister les destinataires, utilisez la collection Recipients

 For Each oAppointmentItem In oAppointments.Items
   For Each oRcp In oAppointmentItem.Recipients
     Debug.Print oRcp.Name 'on affiche le nom d'un destinataire de la réunion
     Debug.Print oRcp.MeetingResponseStatus 'on affiche le status de la réponse du destinataire
     Debug.Print oRcp.Type 'on affiche le type de
 Next
 Next

La liste des valeurs que retourne MeetingResponseStatus : msdn.microsoft.com/fr-fr/library/office/ff868658(v=office.15).aspx.

La liste des valeurs que retourne Type : msdn.microsoft.com/fr-fr/library/office/ff869959(v=office.15).aspx.

Tip
Pour affiche la liste des participants à la présence facultative :

oAppointmentItem.OptionalAttendees

Gonzague DUCOS a écrit 35 articles

Formateur et développeur Office VBA et Windev