首页 > 解决方案 > 如何使用 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

它说文件夹名称不正确。

标签: excelvbaoutlook

解决方案


要进入默认日历文件夹,请尝试

objNamespace.GetDefaultFolder(olFolderCalendar)

NameSpace.GetDefaultFolder 方法 (Outlook)

另请参阅Excel 中的参考 Outlook 文件夹

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


推荐阅读