使用VBA从Excel创建日历事件

时间:2020-02-18 19:24:19

标签: excel vba outlook

我正在尝试使用Excel中的数据在Outlook中创建事件。

这是到目前为止我的代码:

Dim objOutlook As Object
Dim ObjAppt As Object
Dim objNamespace As Object
Dim objFolder As Object
Dim OpenMAPIFolder As Object
Dim objCalendar As Object

Set objOutlook = CreateObject("Outlook.Application")
Set objNamespace = objOutlook.GetNamespace("MAPI")
Set objFolder = objNamespace.GetDefaultFolder(9).Folders("Calendar")
Set ObjAppt = objFolder.Items.Add 'create task item
With ObjAppt
            .Body = Range("A1")
            .Start = Range("A17")
            .End = Range("B17")
            .AllDayEvent = True
            .ReminderSet = True
            .ReminderMinutesBeforeStart = 1440
            .Save
End With

Set ObjAppt = Nothing
Set objFolder = Nothing
Set objNamespace = Nothing
Set objOutlook = Nothing

每当我运行此命令时,它表示文件夹名称不正确。

但是,这是默认日历的名称,所以我不知道为什么这会引起问题。

1 个答案:

答案 0 :(得分:0)

要访问默认的Calendar文件夹,请尝试

objNamespace.GetDefaultFolder(olFolderCalendar)

NameSpace.GetDefaultFolder method (Outlook)

另请参见Reference Outlook folder from Excel

https://stackoverflow.com/a/41476442/4539709