我想在收到回复的时候删除邮件。这是我的代码片段。我不明白为什么每个的会遇到错误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
答案 0 :(得分:1)
将omail
声明为Object
并在循环中检查TypeName
。你这样做的方式,当循环运行到除电子邮件之外的其他内容时,将会出现类型不匹配错误,例如:约会项目。
还阅读有关后期绑定的内容。当您使用非默认库时,我建议使用此功能。