如何从 Excel 宏访问 Outlook 文件夹
How to access an Outlook folder from an Excel macro
我在 Excel 到 select 主 Outlook 收件箱中有 VBA 代码。我想 select 该收件箱中的任何文件夹或子文件夹。
例如,我想 select 我的主收件箱截图中的子文件夹 ALD
:
我在 Outlook 中有另一个电子邮件地址,其中包含文件夹和子文件夹。我想 select 这个其他电子邮件地址的任何文件夹或子文件夹。例如,我有另一个名为 xxxx@yyyy.com 的电子邮件地址和一个文件夹 aaaa
以及一个子文件夹 bbbb
。我如何 select 子文件夹 bbbb
?
Sub OpenOutlookFolder()
Dim xOutlookApp As Outlook.Application
Dim xNameSpace As Outlook.Namespace
Dim xFolder As Outlook.Folder
Dim xFolderType As OlDefaultFolders
On Error Resume Next
Set xOutlookApp = New Outlook.Application
Set xNameSpace = xOutlookApp.Session
Set xFolder = xNameSpace.GetDefaultFolder(olFolderInbox
xFolder.Display
Set xFolder = Nothing
Set xNameSpace = Nothing
Set xOutlookApp = Nothing
Exit Sub
End Sub
大致如下:
Dim ThisNamespace As Outlook.NameSpace: Set ThisNamespace = Application.GetNamespace("MAPI")
Dim Inbox As Outlook.MAPIFolder: Set Inbox = ThisNamespace.GetDefaultFolder(olFolderInbox)
Dim BaseFolder As Outlook.MAPIFolder: Set BaseFolder = Inbox '.Folders("SubFolder1\SubFolder2...")
For direct subfolder access, uncomment within the last line and update the path
如果你想创建一个 searchable/editable 的文件夹结构,那么我对这个问题的回答可能很有趣:How can one iterate through the subfolders of a subfolder of a shared mail inbox folder?
最后,通过再次检查 link 获取对其他收件箱的引用,我设法修改了我的宏,使其按我的意愿工作。请找到以下代码:
Sub OpenOutlookFolderworks()
将 xOutlookApp 调暗为 Outlook.Application
Dim xNameSpace As Outlook.Namespace
Dim xFolder As Outlook.Folder
Dim vRecipient As Outlook.MAPIFolder
Dim xFolderType As OlDefaultFolders
On Error Resume Next
Set xOutlookApp = New Outlook.Application
Set xNameSpace = xOutlookApp.Session
Set xFolder = xNameSpace.GetDefaultFolder(olFolderInbox)
Set xFolder = xFolder.Folders("payment office")
Set xFolder = xFolder.Folders("JIRA")
xFolder.display
Set xFolder = Nothing
Set xNameSpace = Nothing
Exit Sub
End Sub
我在 Excel 到 select 主 Outlook 收件箱中有 VBA 代码。我想 select 该收件箱中的任何文件夹或子文件夹。
例如,我想 select 我的主收件箱截图中的子文件夹 ALD
:
我在 Outlook 中有另一个电子邮件地址,其中包含文件夹和子文件夹。我想 select 这个其他电子邮件地址的任何文件夹或子文件夹。例如,我有另一个名为 xxxx@yyyy.com 的电子邮件地址和一个文件夹 aaaa
以及一个子文件夹 bbbb
。我如何 select 子文件夹 bbbb
?
Sub OpenOutlookFolder()
Dim xOutlookApp As Outlook.Application
Dim xNameSpace As Outlook.Namespace
Dim xFolder As Outlook.Folder
Dim xFolderType As OlDefaultFolders
On Error Resume Next
Set xOutlookApp = New Outlook.Application
Set xNameSpace = xOutlookApp.Session
Set xFolder = xNameSpace.GetDefaultFolder(olFolderInbox
xFolder.Display
Set xFolder = Nothing
Set xNameSpace = Nothing
Set xOutlookApp = Nothing
Exit Sub
End Sub
大致如下:
Dim ThisNamespace As Outlook.NameSpace: Set ThisNamespace = Application.GetNamespace("MAPI")
Dim Inbox As Outlook.MAPIFolder: Set Inbox = ThisNamespace.GetDefaultFolder(olFolderInbox)
Dim BaseFolder As Outlook.MAPIFolder: Set BaseFolder = Inbox '.Folders("SubFolder1\SubFolder2...")
For direct subfolder access, uncomment within the last line and update the path
如果你想创建一个 searchable/editable 的文件夹结构,那么我对这个问题的回答可能很有趣:How can one iterate through the subfolders of a subfolder of a shared mail inbox folder?
最后,通过再次检查 link 获取对其他收件箱的引用,我设法修改了我的宏,使其按我的意愿工作。请找到以下代码:
Sub OpenOutlookFolderworks()
将 xOutlookApp 调暗为 Outlook.Application
Dim xNameSpace As Outlook.Namespace
Dim xFolder As Outlook.Folder
Dim vRecipient As Outlook.MAPIFolder
Dim xFolderType As OlDefaultFolders
On Error Resume Next
Set xOutlookApp = New Outlook.Application
Set xNameSpace = xOutlookApp.Session
Set xFolder = xNameSpace.GetDefaultFolder(olFolderInbox)
Set xFolder = xFolder.Folders("payment office")
Set xFolder = xFolder.Folders("JIRA")
xFolder.display
Set xFolder = Nothing
Set xNameSpace = Nothing
Exit Sub
End Sub