Comment : créer un calendrier personnalisé par programmation

Cet exemple crée un dossier de calendrier nommé PersonalCalendar, puis crée un élément Rendez-vous et l'ajoute au dossier de calendrier.Le code affiche alors le dossier de calendrier.

S'applique à : Les informations contenues dans cette rubrique s'appliquent aux projets de niveau application pour Outlook 2013 et Outlook 2010. Pour en savoir plus, consultez Fonctionnalités disponibles par type d'application et de projet Office.

Exemple

Private Sub CreateCustomCalendar()
    Const newCalendarName As String = "PersonalCalendar"
    Dim primaryCalendar As Outlook.MAPIFolder = _
        Me.Application.ActiveExplorer().Session.GetDefaultFolder(Outlook _
        .OlDefaultFolders.olFolderCalendar)
    Dim needFolder As Boolean = True
    For Each personalCalendar As Outlook.MAPIFolder In _
        primaryCalendar.Folders()
        If personalCalendar.Name = newCalendarName Then
            needFolder = False
        End If
    Next
    If needFolder Then
        Dim personalCalendar As Outlook.MAPIFolder = _
            primaryCalendar.Folders.Add(newCalendarName)
        Dim newEvent As Outlook.AppointmentItem = _
            personalCalendar.Items.Add _
            (Outlook.OlItemType.olAppointmentItem)
        With newEvent
            .Start = Date.Now.AddHours(1)
            .End = Date.Now.AddHours(1.25)
            .Subject = "New plan"
            .Body = "Meet to discuss new plan."
            .Save()
        End With
    End If
    Me.Application.ActiveExplorer().SelectFolder(primaryCalendar _
        .Folders(newCalendarName))
    Me.Application.ActiveExplorer().CurrentFolder.Display()
End Sub
Private Sub CreateCustomCalendar()
    Const newCalendarName As String = "PersonalCalendar"
    Dim primaryCalendar As Outlook.MAPIFolder = _
        Me.Application.ActiveExplorer().Session.GetDefaultFolder(Outlook _
        .OlDefaultFolders.olFolderCalendar)
    Dim needFolder As Boolean = True
    For Each personalCalendar As Outlook.MAPIFolder In _
        primaryCalendar.Folders()
        If personalCalendar.Name = newCalendarName Then
            needFolder = False
        End If
    Next
    If needFolder Then
        Dim personalCalendar As Outlook.MAPIFolder = _
            primaryCalendar.Folders.Add(newCalendarName)
        Dim newEvent As Outlook.AppointmentItem = _
            personalCalendar.Items.Add _
            (Outlook.OlItemType.olAppointmentItem)
        With newEvent
            .Start = Date.Now.AddHours(1)
            .End = Date.Now.AddHours(1.25)
            .Subject = "New plan"
            .Body = "Meet to discuss new plan."
            .Save()
        End With
    End If
    Me.Application.ActiveExplorer().SelectFolder(primaryCalendar _
        .Folders(newCalendarName))
    Me.Application.ActiveExplorer().CurrentFolder.Display()
End Sub
private void CreateCustomCalendar()
{
    const string newCalendarName = "PersonalCalendar";
    Outlook.MAPIFolder primaryCalendar = (Outlook.MAPIFolder)
        this.Application.ActiveExplorer().Session.GetDefaultFolder
         (Outlook.OlDefaultFolders.olFolderCalendar);
    bool needFolder = true;
    foreach (Outlook.MAPIFolder personalCalendar
        in primaryCalendar.Folders)
    {
        if (personalCalendar.Name == newCalendarName)
        {
            needFolder = false;
            break;
        }
    }
    if (needFolder)
    {
        Outlook.MAPIFolder personalCalendar = primaryCalendar
            .Folders.Add(newCalendarName,
                Outlook.OlDefaultFolders.olFolderCalendar);
        Outlook.AppointmentItem newEvent =
            personalCalendar.Items.Add
            (Outlook.OlItemType.olAppointmentItem)
            as Outlook.AppointmentItem;
        newEvent.Start = DateTime.Now.AddHours(1);
        newEvent.End = DateTime.Now.AddHours(1.25);
        newEvent.Subject = "New plan";
        newEvent.Body = " Meet to discuss new plan.";
        newEvent.Save();
    }
    Application.ActiveExplorer().SelectFolder(primaryCalendar
        .Folders[newCalendarName]);
    Application.ActiveExplorer().CurrentFolder.Display();
}
private void CreateCustomCalendar()
{
    const string newCalendarName = "PersonalCalendar";
    Outlook.MAPIFolder primaryCalendar = (Outlook.MAPIFolder)
        this.Application.ActiveExplorer().Session.GetDefaultFolder
         (Outlook.OlDefaultFolders.olFolderCalendar);
    bool needFolder = true;
    foreach (Outlook.MAPIFolder personalCalendar
        in primaryCalendar.Folders)
    {
        if (personalCalendar.Name == newCalendarName)
        {
            needFolder = false;
            break;
        }
    }
    if (needFolder)
    {
        Outlook.MAPIFolder personalCalendar = primaryCalendar
            .Folders.Add(newCalendarName,
                Outlook.OlDefaultFolders.olFolderCalendar);
        Outlook.AppointmentItem newEvent =
            personalCalendar.Items.Add
            (Outlook.OlItemType.olAppointmentItem)
            as Outlook.AppointmentItem;
        newEvent.Start = DateTime.Now.AddHours(1);
        newEvent.End = DateTime.Now.AddHours(1.25);
        newEvent.Subject = "New plan";
        newEvent.Body = " Meet to discuss new plan.";
        newEvent.Save();
    }
    Application.ActiveExplorer().SelectFolder(primaryCalendar
        .Folders[newCalendarName]);
    Application.ActiveExplorer().CurrentFolder.Display();
}

Voir aussi

Tâches

Comment : créer des rendez-vous par programmation

Comment : créer une demande de réunion par programmation

Concepts

Utilisation des éléments du calendrier