2017-05-22 3 views
1

MS Outlookで特定の送信者からを受け取ったメールからすべての添付ファイルをダウンロードします。添付ファイルを未読アイテムからダウンロードして特定の送信者から届いています

すべての未読メールからすべての添付ファイルをダウンロードするコードが見つかりました。 Downloading Attachments from Unread Emails of MS Outlookとそれに適応しようとしました。

ただし、フィルタが正しく動作していません。そのような電子メールがないことを示しています。以下は

Filter = "[Unread] = True And [SenderEmailAddress] = '[email protected]'" 

全体のコードです:

Option Explicit 
Public Sub Example() 
Dim oOlAp As Object 
Dim olNs As Outlook.Namespace 
Dim Inbox As Outlook.MAPIFolder 
Dim Items As Outlook.Items 
Dim Item As Outlook.MailItem 
Dim Atmt As Attachment 
Dim Filter As String 
Dim FilePath As String 
Dim AtmtName As String 
Dim i As Long 

'// Set Inbox Reference 
Set oOlAp = GetObject(, "Outlook.application") 
Set olNs = oOlAp.GetNamespace("MAPI") 
Set Inbox = olNs.GetDefaultFolder(olFolderInbox) 

FilePath = "C:\Users\irybchuk\Documents\" 
Filter = "[Unread] = True And [SenderEmailAddress] = '[email protected]'" 
Set Items = Inbox.Items.Restrict(Filter) 

'// Loop through backwards 
For i = Items.Count To 1 Step -1 
    Set Item = Items.Item(i) 

    DoEvents 

    If Item.Class = olMail Then 
     Debug.Print Item.Subject ' Immediate Window 

     For Each Atmt In Item.Attachments 
      AtmtName = FilePath & Atmt.FileName 
      Atmt.SaveAsFile AtmtName 
     Next 
    End If 
Next 

Set Inbox = Nothing 
Set Items = Nothing 
Set Item = Nothing 
Set Atmt = Nothing 
Set olNs = Nothing 
End Sub 

私はここにいることを信じている:How to filter items sendername from Items_ItemAdd Events?は、フィルタラインを変更するにはどのように可能な解決策を説明することができます。しかし、私はそれをすることができませんでした。

+0

を必要としません。フィルター、どのオフィスにいるの?不具合? – 0m3r

+0

私はMS Office 2010を使用していますが、エラーは表示されません。問題は、それはそのような電子メールを見つけることができません - それは箱にそのような電子メールがないことを示します。フィルタを未読メールにのみ使用している場合は、そのフィルタが検索されます。 – Iaroslav

答えて

関連する問題