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

问题描述 投票:0回答:1

所以有一个线程SO Link Here链接如何制作一个outlook“事件”,但实际上它创建一个约会,而不是一个事件。

可以阅读关于HERE的差异。

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

c# vba outlook outlook-vba
1个回答
0
投票

约会和事件之间的差异是事件持续24小时或更长时间,因为您知道事件不会在用户的日历中显示为已占用的时间块。相反,它们显示为横幅

要使用vba创建全天事件,您需要将AllDayEvent对象的AppointmentItem属性设置为true。然后将Start属性设置为12:00 AM。 (午夜)您希望活动开始的那天,以及End酒店的营业时间至凌晨12:00。在您希望活动结束的第二天。


VBA示例

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

C#示例

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

MSDN: How to: Create an Appointment That Is an All-Day Event

© www.soinside.com 2019 - 2024. All rights reserved.