Vba 运行时错误';13';类型不匹配
我创建了一个宏,以便在收到新邮件时从outlook下载附件,但我收到的错误是“运行时错误'13'类型不匹配”,下面是我使用的代码 谁能帮我解决这个问题Vba 运行时错误';13';类型不匹配,vba,outlook,Vba,Outlook,我创建了一个宏,以便在收到新邮件时从outlook下载附件,但我收到的错误是“运行时错误'13'类型不匹配”,下面是我使用的代码 谁能帮我解决这个问题 Option Explicit Private Sub Application_NewMail() Dim onamespace As Outlook.NameSpace Set onamespace = Outlook.GetNamespace("MAPI") Dim myfol As Outlook.Folder Set myfol =
Option Explicit
Private Sub Application_NewMail()
Dim onamespace As Outlook.NameSpace
Set onamespace = Outlook.GetNamespace("MAPI")
Dim myfol As Outlook.Folder
Set myfol = onamespace.GetDefaultFolder(olFolderInbox)
Dim omail As Outlook.MailItem
Set omail = Outlook.CreateItem(olMailItem)
Dim Atmt As Outlook.Attachment
For Each omail In myfol.Items
If omail.SenderEmailAddress = "sacchu693@gmail.com" Then
For Each Atmt In omail.Attachments
Atmt.SaveAsFile "Z:\True_ID\46 RSA\" & Atmt.FileName
Next
Else
End If
Next
End Sub
您的代码没有多大意义-您正在创建一条新消息(oMail),但您从未对它做过任何事情。您只需使用变量声明来循环收件箱中的所有项目。由于它被声明为
MailItem
,因此当它遇到MailItem以外的类型的项目(例如ReportItem
或MeetingItem
)时,它会爆炸
改用NewMailEx
事件-它将新邮件的条目id作为参数传递。使用它调用命名空间.GetItemFromID的可能重复项