[英]Importing Appointments from Outlook
我有一个与同事帐户相关联的共享 Outlook 约会日历。 我正在尝试将该日历中的约会导出到 Excel。
我发现很多 VBA 代码页面显示了如何使用代码中的 email 地址从主日历导出,但是此日历仅设置为约会日历,并且与用户的主日历分开。 当我引用她的 email 地址时,它从她的主日历中提取。
约会日历由 email 共享,我需要接受将其添加到我自己的日历列表中。
我想我需要在代码中命名这个特定的日历?
当您获得日历文件夹时,您可以尝试获取父文件夹,然后遍历所有子文件夹以及已检索的共享日历。 希望在那里你能找到你需要的东西。
要获取共享日历文件夹,您需要使用Namespace
class 的GetSharedDefaultFolder
方法,该方法返回代表指定用户的指定默认文件夹的Folder
object。 此方法用于委派方案,其中一个用户已将一个或多个默认文件夹(例如,他们的共享Calendar
文件夹)的访问权限委派给另一个用户。 例如:
Sub ResolveName()
Dim myNamespace As Outlook.NameSpace
Dim myRecipient As Outlook.Recipient
Dim CalendarFolder As Outlook.Folder
Set myNamespace = Application.GetNamespace("MAPI")
Set myRecipient = myNamespace.CreateRecipient("Eugene Astafiev")
myRecipient.Resolve
If myRecipient.Resolved Then
Call ShowCalendar(myNamespace, myRecipient)
End If
End Sub
Sub ShowCalendar(myNamespace, myRecipient)
Dim CalendarFolder As Outlook.Folder
Set CalendarFolder = _
myNamespace.GetSharedDefaultFolder _
(myRecipient, olFolderCalendar)
CalendarFolder.Display
End Sub
因此,在获取默认日历文件夹后,您可能会要求提供父文件夹(请参阅Parent
属性)。 然后,您可以使用Folders属性,该属性返回表示指定文件夹中包含的所有文件夹的Folders
集合。 遍历您需要的所有子文件夹。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.