共用方式為


HOW TO:以程式設計方式建立自訂行事曆

這個範例會建立名為 PersonalCalendar 的新 [行事曆] 資料夾,然後建立新的約會項目並將它加入至 [行事曆] 資料夾。之後,程式碼就會顯示 [行事曆] 資料夾。

**適用於:**本主題中的資訊適用於 Outlook 2013 和 Outlook 2010 的應用程式層級專案。如需詳細資訊,請參閱依 Office 應用程式和專案類型提供的功能

範例

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();
}

請參閱

工作

HOW TO:以程式設計方式建立約會

HOW TO:以程式設計方式建立會議邀請

概念

使用行事曆項目