参考非默认的非英语收件箱

时间:2017-11-30 11:51:40

标签: vba outlook

我正在尝试在MS Outlook中设置对非默认收件箱的引用。我找到了a code in SO

Dim objNS As Outlook.NameSpace
Dim objFolder As Outlook.MAPIFolder
Set objNS = GetNamespace("MAPI")
Set objFolder = objNS.Folders("Procurement, Request")
Set objFolder = objFolder.Folders("Inbox")

当收件箱被命名为"收件箱"。

时,这是正常的

收件箱有可能以非英语语言命名。

您可以通过

参考默认收件箱
objNS.getdefaultfolder(6)

但是非违约呢?

1 个答案:

答案 0 :(得分:1)

您应该能够按商店索引或名称获取收件箱。

Option Explicit

Sub Inbox_by_Store()

Dim allStores As Stores
Dim storeInbox As Folder

Dim i As Long

Set allStores = Session.Stores

For i = 1 To allStores.count

    Debug.Print i & " DisplayName - " & allStores(i).DisplayName

    Set storeInbox = Nothing
    On Error Resume Next
    Set storeInbox = allStores(i).GetDefaultFolder(olFolderInbox)
    On Error GoTo 0

    If Not storeInbox Is Nothing Then
        storeInbox.Display
    End If

Next

ExitRoutine:
    Set allStores = Nothing
    Set storeInbox = Nothing

End Sub