2017-02-13 105 views
0

因此,我正在设置一个宏,以在Outlook中打开一个新窗口,并只显示我的收件箱中的子文件夹。我有大量的文件夹,需要弹出一个单独的窗口来帮助将电子邮件拖放到这些其他文件夹。VBA展望打开新窗口,只显示文件夹窗格

这是我目前设置的代码。我只是不知道如何关闭主电子邮件列表(成功关闭预览窗格)。

对不起,如果我的代码是sl。。我一直试图让这个问题得到解决。

Sub anothertesttoopen() 
Dim oFolder As Outlook.Folder 


For Each oaccount In Application.Session.Accounts 
    If oaccount = "[email protected]" Then 
    Set Store = oaccount.DeliveryStore 
    Set oFolder = Store.GetDefaultFolder(olFolderInbox).Folders.Item("Projects 2017") 'here it selects the inbox folder of account. 


End If 
Next 

oFolder.Display 


Dim myOlExp As Outlook.Explorer 
Set myOlExp = Application.ActiveExplorer 
myOlExp.ShowPane olPreview, Not myOlExp.IsPaneVisible(olPreview) 


End Sub 
+0

为什么你有Excel标签? – 0m3r

回答

0

Outlook对象模型不提供隐藏网格的任何方法或属性。相反,您可以在其中显示任何网页。 Folder类的WebViewOn属性允许设置一个布尔值,指示文件夹的Web视图状态。它返回True以显示由Folder对象的WebViewURL属性指定的网页。 Microsoft Outlook使用客户端计算机上安装的Windows Internet Explorer版本的呈现引擎来显示网页。如果客户端计算机上未安装Internet Explorer,Outlook将不会显示该网页。例如:

Sub SetupFolderHomePage() 
Dim nsp As Outlook.NameSpace 
Dim mpfInbox As Outlook.Folder 
Dim mpfNew As Outlook.Folder 

Set nsp = Application.GetNamespace("MAPI") 
Set mpfInbox = nsp.GetDefaultFolder(olFolderInbox) 
Set mpfNew = mpfInbox.Folders.Add("MyFolderHomePage") 
mpfNew.WebViewURL = "http://www.microsoft.com" 
mpfNew.WebViewOn = True 
End Sub 

另外你可能会考虑创建一个解决方案模块。有关更多信息,请参阅Adding Solution-Specific Folders to the Solutions Module in OutlookProgramming the Outlook 2010 Solutions Module

+0

这是一个很酷的想法,但我不完全确定如何将它应用于我的特定目标。最终,即时通讯试图让Outlook打开一个新窗口,只有导航窗格显示.....如果可以将其打开并滚动到列表中的特定文件夹(例如“项目2017“)。 – jason