1

Outlook サブフォルダーからメールを読むにはどうすればよいですか? Inbox から読み取ることはできますが、Inbox で作成したフォルダーから読み取る方法がわかりません。

コンソール アプリケーションの簡単なコードは次のとおりです。

Sub Main()

    Dim otkApp As Outlook.Application = New Outlook.Application
    Dim otkMailItem = "IPM.Note"
    Dim otkNameSpace As Outlook.NameSpace = otkApp.GetNamespace("MAPI")
    Dim otkInboxFolder As Outlook.MAPIFolder = otkNameSpace.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderInbox)
    Dim otkMailItems As Outlook.Items = otkInboxFolder.Items
    Dim otkMessage As Outlook.MailItem
    Dim iCntr As Integer

    MsgBox(otkMailItems.Count)
    For iCntr = 1 To otkMailItems.Count
        If otkMailItems.Item(iCntr).MessageClass = otkMailItem Then
            otkMessage = otkMailItems.Item(iCntr)

            Console.WriteLine(iCntr)
            Console.WriteLine(otkMessage.SenderName)
            Console.WriteLine(otkMessage.Subject)
            Console.WriteLine(otkMessage.ReceivedTime)
            Console.WriteLine(otkMessage.Body)
            Console.WriteLine("______________________________")
        End If
    Next

    otkApp = Nothing
    otkNameSpace = Nothing
    otkMailItems = Nothing
    otkMessage = Nothing
End Sub

この行を変更する必要があると思います:

Dim otkInboxFolder As Outlook.MAPIFolder = otkNameSpace.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderInbox)

メールを読みたいフォルダーは次のとおりです。

Inbox -> domain.com -> support@domain.com
4

2 に答える 2

0

Outlook.NameSpace.Folders("folder_name") プロパティを使用できます。このプロパティを呼び出すたびに、Folders プロパティを持つ MAPIFolder が返されるため、ネストされたフォルダーにアクセスする場合に使用できます。

たとえば、「support@domain.com」フォルダー内にある「domain.com」フォルダー内にある「Inbox」という名前のフォルダーにアクセスしたいとします。次を使用します。

Dim otkInboxFolder As Outlook.MAPIFolder = otkNameSpace.Folders("support@domain.com").Folders("domain.com").Folders("Inbox")
于 2012-11-14T11:10:32.503 に答える
0

受信トレイ フォルダーのサブフォルダーである場合は、MAPIFolder.Folders コレクションを使用して子サブフォルダーにアクセスできます。

Dim otkInboxFolder As Outlook.MAPIFolder = otkNameSpace.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderInbox)
Dim SubFolder = otkInboxFolder.Folders.Item*"TheSubfolderName")
Dim otkMailItems As Outlook.Items = SubFolder .Items
于 2017-04-04T17:55:42.813 に答える