问题从共享的Outlook日历中删除约会

我正在编写一个脚本从一个SharePoint站点抓取数据,并在实验室停机发生时在Outlook上创build一个预约。 我有一个删除方法,如果我在我的Outlook上testing,但它不会清除共享日历

Private Sub DeleteAllAppointments() Dim olkApp As Object, _ olkSession As Object, _ olkCalendar As Object, _ olkItem As Object, _ intIndex As Integer Set olkApp = CreateObject("Outlook.Application") Set olkSession = olkApp.Session olkSession.Logon Set olkCalendar = olkSession.GetDefaultFolder(olFolderCalendar) For intIndex = olkCalendar.Items.Count To 1 Step -1 Set olkItem = olkCalendar.Items.Item(intIndex) olkItem.Delete Next Set olkItem = Nothing Set olkCalendar = Nothing olkSession.Logoff Set olkSession = Nothing Set olkApp = Nothing End Sub 

这是该方法崩溃的地方

 Set olkCalendar = olkSession.GetDefaultFolder(olFolderCalendar) 

我想知道如果有人有任何想法如何解决这个问题。 我想知道这是否是一个文件夹path问题?

olkSession.GetDefaultFolder(olFolderCalendar)将检索您的默认日历文件夹。 您需要使用olkSession.GetSharedDefaultFolder(someRecipient, olFolderCalendar) (其中someRecipientolkSession.CreateRecipient)返回olkSession.CreateRecipient)或从Namespace.Stores集合(假设Store.GetDefaultFolder邮箱已存在)中打开相应的存储并调用Store.GetDefaultFolder