1

我有一些在新窗口中打开日历的 VBa 代码,但我现在需要它来显示我已经设置的共享日历,但我能找到的唯一代码在新窗口中创建一个新的共享日历我刚刚创建;

Sub DispCalendars()
    Dim myOlApp As Outlook.Application
    Dim myNms As Outlook.NameSpace
    Dim myFolder As Outlook.MAPIFolder
    Dim myRecipient As Outlook.Recipient
    Dim myExplorer As Outlook.Explorer
    Dim SharedFolder As Outlook.MAPIFolder

    Set myOlApp = CreateObject("Outlook.Application")

    Set myNms = myOlApp.GetNamespace("MAPI")
    Set myFolder = myNms.GetDefaultFolder(olFolderCalendar)

    Set myExplorer = myOlApp.ActiveExplorer
    Set myExplorer.CurrentFolder = myFolder
    Set myRecipient = myNms.CreateRecipient("Bob the Builder")
    Set SharedFolder = myNms.GetSharedDefaultFolder(myRecipient, olFolderCalendar)
    myExplorer.SelectFolder SharedFolder
End Sub

如果我将“myRecipient”部分更改为一个名称,它会出错,我似乎无法解决。

是它的外观(当我手动执行时),我想在代码中重新创建它。

4

1 回答 1

1

我认为您错过了显示在 Outlook 中选择的文件夹的行

    myExplorer.CurrentFolder = SharedFolder 

我想代替“selectfolder”-line ...也可以删除其他一些行,尤其是

设置 myExplorer.CurrentFolder = myFolder

因为它不会在一个 Sub 中一个接一个地打开两个文件夹。

你的麦克斯

于 2013-11-23T16:00:53.603 回答