如何防止item.sd之后再次触发ItemAdd事件

时间:2014-05-05 15:53:07

标签: outlook-vba

如何阻止item.sd之后再次触发ItemAdd事件 目前我得到一个无限循环

Private Sub yFld_ItemAdd(ByVal item As Object)
    If Left(item.Subject, 16) Like "Visit from Mail:" And IsNumeric(Mid(item.Subject, 17)) Then
    x = newVisit(CLng(Mid(item.Subject, 17)))
    item.Subject = "checked: " & item.Subject & " " & x
    item.Save
End If
End Sub

2 个答案:

答案 0 :(得分:1)

使用标志来决定是否保存项目:

Dim ItemChecked as Boolean

Private Sub ThisAddIn_Startup() Handles Me.Startup
   ...
   ItemChecked = False
End Sub

Private Sub yFld_ItemAdd(ByVal item As Object)

   If Not ItemChecked Then
   ...
      mail.Save()                     
      ItemChecked = True       
   Else
      ItemChecked = False
   End If
End Sub

它适用于我的情况。

答案 1 :(得分:0)

ItemAdd不会触发。 ItemChange会。