在电子邮件上触发宏到特定文件夹

时间:2015-12-18 01:00:21

标签: vba outlook outlook-vba

  

错误:找不到对象。

MyEmailAddress有一个名为CL的文件夹,当有什么东西时,我想要一个名为" InsertData"跑。

Dim E_flge As Byte   

Private Sub Application_NewMailEx(ByVal EntryIDCollection As String)
    Dim NS As Outlook.NameSpace
    Dim MyMail As Object

    Set NS = Application.GetNamespace("MAPI")
    Set MyMail = NS.GetItemFromID(EntryIDCollection)

    E_flge = 0

    If MyMail.Class = olMail Then
    If MyMail.Parent.Parent = "MyEmailAddress" Then
            InsertData 'Macro I am trying to call
        End If
    End If

End Sub

2 个答案:

答案 0 :(得分:0)

我很确定你需要实际“调用”宏

Call InsertData

未找到的对象可能在宏本身中。也许你应该发布

答案 1 :(得分:0)

“当新邮件到达收件箱时,会触发NewMailEx事件......”https://msdn.microsoft.com/en-us/library/office/ff863686.aspx

这是默认的收件箱。您可能希望引用非默认收件箱,因此无法使用NewMailEx。

尝试使用ItemAdd和Get reference to additional Inbox