每个vba outlook的错误13

时间:2014-02-20 09:23:37

标签: vba for-loop outlook outlook-vba

我想在收到回复的时候删除邮件。这是我的代码片段。我不明白为什么每个的会遇到错误13

Sub test222()

Dim oapp As Outlook.Application
Dim osession As Outlook.NameSpace
Dim oInbox As Outlook.MAPIFolder
Dim oSentItem As Outlook.MAPIFolder

Dim omail As Outlook.MailItem
Dim conID As String

Set oapp = New Outlook.Application
Set osession = oapp.GetNamespace("MAPI")
Set oInbox = osession.GetDefaultFolder(olFolderInbox)
Set oSentItem = osession.GetDefaultFolder(olFolderSentMail)

i = 1
For Each omail In oSentItem.Items

If (omail.Subject = "Delivered: aa") Then
     Msgbox "Hi"
     omail.Delete

     Exit For
              Else
     i = i + 1
     End If         
Next

End Sub

1 个答案:

答案 0 :(得分:1)

omail声明为Object并在循环中检查TypeName。你这样做的方式,当循环运行到除电子邮件之外的其他内容时,将会出现类型不匹配错误,例如:约会项目。

还阅读有关后期绑定的内容。当您使用非默认库时,我建议使用此功能。