Windows10
Outlook2016
受信したメールの添付ファイルを自動保存するマクロ
このサイトを見ながらVBAを書いているのですが、メールを同時に複数受信した際に、意図したとおりに動きません。
NewMailEx イベントは、新しいメッセージが受信トレイに配信されたときに、クライアント ルールの処理が実行される前に発生します。EntryIDCollection 配列で返されたエントリ ID を使用して NameSpace.GetItemFromID メソッドを呼び出すと、受信したアイテムを処理できます
とあるので、下記のようにコードを組んでみたのですが、
メール1通受信の時しか正常に動作しません。
複数メール受信時でも動作するようにするにはどのように修正したらよろしいでしょうか。
vba
1Public Sub Application_NewMailEx(ByVal EntryIDCollection As String) 2Dim varEntryIDs 3 4Dim i As Integer 5varEntryIDs = Split(EntryIDCollection, ",") 6For i = 0 To UBound(varEntryIDs) 7 8Set objItem = Application.Session.GetItemFromID(varEntryIDs(i)) 9 10Debug.Print objItem.SUBJECT 11 12Next 13 14End Sub
2017/05/19追記
ちなみに当方の環境はoffice365のメールをoutlookを利用して受信しています。
アカウント設定欄の種類には、[Microsoft Exchange]と記載されています。
あなたの回答
tips
プレビュー