Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Outlook 2013 VBA显示共享日历_Vba_Outlook_Calendar_Outlook 2013 - Fatal编程技术网

Outlook 2013 VBA显示共享日历

Outlook 2013 VBA显示共享日历,vba,outlook,calendar,outlook-2013,Vba,Outlook,Calendar,Outlook 2013,我有一些VBa代码可以在一个新窗口中打开日历,但是我现在需要它来显示我已经设置好的共享日历,但是我能找到的唯一代码就是在我刚刚创建的新窗口中创建一个新的共享日历 Sub DispCalendars() Dim myOlApp As Outlook.Application Dim myNms As Outlook.NameSpace Dim myFolder As Outlook.MAPIFolder Dim myRecipient As Outlook.Recip

我有一些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”部分改为一个名字,它会出错,我似乎无法计算出来


是它的外观(当我手动执行时),我希望用代码重新创建它。

我想您错过了显示Outlook中选定文件夹的那一行

    myExplorer.CurrentFolder = SharedFolder 
我想不是“selectfolder”行。。。此外,还可以删除一些其他行,特别是

设置myExplorer.CurrentFolder=myFolder

因为sende无法在一个子系统中依次打开两个文件夹

你的
Max

我想您错过了显示Outlook中选定文件夹的那一行

    myExplorer.CurrentFolder = SharedFolder 
我想不是“selectfolder”行。。。此外,还可以删除一些其他行,特别是

设置myExplorer.CurrentFolder=myFolder

因为sende无法在一个子系统中依次打开两个文件夹

你的
Max

那么问题是GetSharedDefaultFolder返回特定名称的错误?确切的错误是什么?如果在“到”编辑框中键入相同的值并按Ctrl+K,Outlook是否可以解决此问题?因此,问题是GetSharedDefaultFolder为特定名称返回错误?确切的错误是什么?如果在“要编辑”框中键入相同的值并按Ctrl+K,Outlook是否可以解决此问题?