VBA outlook 2010移动

VBA outlook 2010移动,vba,outlook,outlook-2010,Vba,Outlook,Outlook 2010,m.display工作,但m.move(A)不工作 文件夹已存在 Private Sub Application_NewMailEx(ByVal EntryIDCollection As String) Dim arr() As String Dim myInbox As Outlook.Folder Dim A As Outlook.Folder Set myNameSpace = Application.GetNamespace("MAPI") Set

m.display
工作,但
m.move(A)
不工作

文件夹已存在

Private Sub Application_NewMailEx(ByVal EntryIDCollection As String)
    Dim arr() As String
    Dim myInbox As Outlook.Folder
    Dim A As Outlook.Folder
    Set myNameSpace = Application.GetNamespace("MAPI")
    Set myInbox = 
           myNameSpace.GetDefaultFolder(olFolderInbox)
    Set A = myInbox.Folders("A")
    Dim i As Integer
    Dim m As MailItem
    On Error Resume Next
    arr = Split(EntryIDCollection, ",")
    For i = 0 To UBound(arr)
    Set m = Application.Session.GetItemFromID(arr(i))

    If m.SenderEmailAddress = "notifications@transcore.com" Then
        'MsgBox (m.Body)
        m.Display
        m.Move (A)
    End If

    Next
End Sub

移动是一项功能,而不是子功能。先移动消息,然后显示它:

set m = m.Move(A) 
m.Display

只是您可能遇到的一个小错误应为i=0到UBound(arr)的代码>1