Excel 从Outlook导入约会
我有一个链接到同事帐户的共享Outlook约会日历。我正在尝试将该日历中的约会导出到Excel 我发现了很多VBA代码页面,显示了如何使用代码中的电子邮件地址从主日历导出,但是此日历仅设置为约会日历,并且与用户的主日历分开。当我提到她的电子邮件地址时,它是从她的主日历中提取的 约会日历通过电子邮件共享,我需要接受才能将其添加到我自己的日历列表中Excel 从Outlook导入约会,excel,vba,outlook,Excel,Vba,Outlook,我有一个链接到同事帐户的共享Outlook约会日历。我正在尝试将该日历中的约会导出到Excel 我发现了很多VBA代码页面,显示了如何使用代码中的电子邮件地址从主日历导出,但是此日历仅设置为约会日历,并且与用户的主日历分开。当我提到她的电子邮件地址时,它是从她的主日历中提取的 约会日历通过电子邮件共享,我需要接受才能将其添加到我自己的日历列表中 我想我需要在代码中命名这个特定的日历?当您获得一个日历文件夹时,您可以尝试获取父文件夹,然后迭代所有子文件夹以及已检索的共享日历。希望在那里你能找到你需
我想我需要在代码中命名这个特定的日历?当您获得一个日历文件夹时,您可以尝试获取父文件夹,然后迭代所有子文件夹以及已检索的共享日历。希望在那里你能找到你需要的东西 要获取共享日历文件夹,需要使用
命名空间
类的GetSharedDefaultFolder
方法,该方法返回一个文件夹
对象,该对象表示指定用户的指定默认文件夹。此方法用于委派场景,其中一个用户已将其一个或多个默认文件夹(例如,其共享的日历
文件夹)的访问权委派给另一个用户。例如:
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
因此,在获得默认日历文件夹后,您可以请求父文件夹(请参阅
父文件夹
属性)。然后,可以使用属性返回表示指定文件夹中包含的所有文件夹的文件夹
集合。迭代所有子文件夹,您将找到所需的子文件夹。谢谢您,Sture,是的,我在谷歌上搜索过,我以前看过这段代码。然而,当我尝试在我自己的电子邮件地址上使用它时,但当我用我的同事替换它时,因为它试图访问她的默认日历,它不起作用。我是否可以参考特定的共享约会日历,例如“年假天数”。每个人都在这里添加数据,其他人将需要使用此代码,并且她不能将默认日历的公共访问权授予所有人。显示如何导航其他用户的日历文件夹结构。此外,该链接还显示了如何使用导航窗格“访问从共享邀请打开的文件夹”。如果你成功了,你可以发布并接受你自己的答案。