VBA Outook 2010 - 编码ItemAdd事件

时间:2017-02-09 19:26:09

标签: vba outlook-vba outlook-2010

我已经在各个网站上看到了一些针对这个问题的帖子,但还没有让它发挥作用。也许我是密集的,不知道,但是这里有: 事件似乎不想解雇。 ThisOutlookSession内的代码 在子/函数之前的顶部:

'Declare event handler
Public WithEvents myOutlookItems As Outlook.Items 
Private Sub Application_Startup() 
    Set myOutlookItems = Application.GetNamespace("MAPI").GetDefaultFolder(olFolderSentMail).Items 
End Sub 
Public Sub myOutlookItems_ItemAdd(ByVal Item As Object) 
    If TypeName(Item) = MailItem Then 
        MsgBox ("Got a message") 
    End If 
End Sub' 

感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

TypeName返回一个字符串,因此您的代码应为

If TypeName(Item) = "MailItem" Then

或者您可以检查Class属性的值(所有OOM对象都公开它):

If Item.Class = olMail Then ' olMail== 43