C# 使用VBA创建Outlook事件(不是约会!)

C# 使用VBA创建Outlook事件(不是约会!),c#,vba,outlook,C#,Vba,Outlook,因此,有一个线程链接如何制作outlook事件,但实际上它创建了一个约会,而不是事件 我们可以了解这些差异 我的问题很简单。。。如何使用VBA创建实际事件而不是约会?谢谢 约会和事件的不同之处在于事件持续24小时或更长时间,正如您所知,事件不会在用户日历中显示为占用的时间块。相反,它们显示为横幅 要使用vba创建全天事件,需要将对象的属性设置为true。然后将属性设置为事件开始当天的午夜12:00,并将属性设置为事件结束后的第二天的凌晨12:00 VBA示例 C示例 此解决方案可正确创建事件项。

因此,有一个线程链接如何制作outlook事件,但实际上它创建了一个约会,而不是事件

我们可以了解这些差异

我的问题很简单。。。如何使用VBA创建实际事件而不是约会?谢谢

约会和事件的不同之处在于事件持续24小时或更长时间,正如您所知,事件不会在用户日历中显示为占用的时间块。相反,它们显示为横幅

要使用vba创建全天事件,需要将对象的属性设置为true。然后将属性设置为事件开始当天的午夜12:00,并将属性设置为事件结束后的第二天的凌晨12:00

VBA示例

C示例


此解决方案可正确创建事件项。非常感谢。
Option Explicit
Public Sub Example()
    Dim Obj_Event As Outlook.AppointmentItem
    Set Obj_Event = Application.CreateItem(olAppointmentItem)

    With Obj_Event
        .Subject = "ALL Day Event Example"
        .Location = "stackoverflow.com"
        .AllDayEvent = True
        .Start = Format("03/10/2018 12:00 AM")
        .End = Format("03/11/2018 12:00 AM")
        .Save
        .Display
    End With
End Sub
private void AllDayEventExample()
{
    Outlook.AppointmentItem appt = Application.CreateItem(
        Outlook.OlItemType.olAppointmentItem)
        as Outlook.AppointmentItem;
    appt.Subject = "Developer's Conference";
    appt.AllDayEvent = true;
    appt.Start = DateTime.Parse("6/11/2007 12:00 AM");
    appt.End = DateTime.Parse("6/16/2007 12:00 AM");
    appt.Display(false);
}