VBA outlook打开新窗口,仅显示文件夹窗格

时间:2017-02-13 19:09:16

标签: excel vba outlook

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

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

抱歉,如果我的代码很草率。我一直试图把这个打破。

Sub anothertesttoopen()
Dim oFolder As Outlook.Folder


For Each oaccount In Application.Session.Accounts
  If oaccount = "email@myemail.com" 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

1 个答案:

答案 0 :(得分:0)

Outlook对象模型不提供隐藏网格的任何方法或属性。相反,您可以在那里显示任何网页。 Folder类的WebViewOn属性允许设置一个布尔值,指示文件夹的Web视图状态。它返回True以显示由Folder对象的WebViewURL属性指定的Web页面。 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