【发布时间】:2020-06-30 07:47:53
【问题描述】:
我正在尝试通过 Excel VBA 为我们楼层的会议室创建一个匿名的日程安排。
源数据存储在不同的 Outlook 日历中(每个房间都有自己的日历),我可以通过 Outlook 的“共享日历”功能访问它们。
我目前遇到的问题是数据检索过程完全自动化。我让其他一切工作正常,但是,它需要用户从一个小的弹出窗口中手动选择(当前)五个不同的日历,这很烦人。
我尝试过使用GetDefaultFolder(olFolderCalendar).Items 方法,但这似乎只适用于本地日历,而不是来自网络的共享日历(Exchange)。
有没有办法直接处理这些房间日历,以便我可以自动化我的流程?
最好的问候,
达扎
这是我当前的代码,缩减到相关部分:
Set olNS = olApp.GetNamespace("MAPI")
For x = 1 To 5
Set myCalItems = olNS.PickFolder.Items
With myCalItems
.Sort "[Start]", False
.IncludeRecurrences = True
End With
StringToCheck = "[Start] >= " & Quote(StartDate & " 12:00 AM") & " AND [End] <= " & Quote(EndDate & " 11:59 PM")
Set ItemstoCheck = myCalItems.Restrict(StringToCheck)
' Do stuff with every item in "ItemstoCheck"
' ...
' ...
' ...
Next
【问题讨论】: