91对象变量或未设置块变量

时间:2014-09-14 21:45:26

标签: download outlook attachment outlook-vba

我正在尝试从主题指定的电子邮件中下载附件。

If Msg.Subject = "CALENDAR-EVENT" Then

        'Download the attachment

        Dim itmAttach As Outlook.MailItem
        Dim objAtt As Outlook.Attachment
        Dim saveFolder As String
            saveFolder = "C:\events\"
        Dim dateFormat As String
            dateFormat = Format(itmAttach.ReceivedTime, "yyyy-mm-dd Hmm ")
        For Each objAtt In itmAttach.Attachments
            objAtt.SaveAsFile saveFolder & "\" & dateFormat & objAtt.DisplayName
        Next
End if

我收到错误:

  

91对象变量或未设置块变量

这条线可能有一些错误:

Dim itmAttach As Outlook.MailItem

获取下载文件的名称也很不错。

1 个答案:

答案 0 :(得分:1)

之前我没有使用过Outlook API,我也没有多年触摸过VBA,但从它的外观来看,你的意思是:

If Msg.Subject = "CALENDAR-EVENT" Then
        Dim objAtt As Outlook.Attachment
        Dim saveFolder As String
            saveFolder = "C:\events"
        Dim dateFormat As String
            dateFormat = Format(Msg.ReceivedTime, "yyyy-mm-dd Hmm ")
        For Each objAtt In Msg.Attachments
            objAtt.SaveAsFile saveFolder & "\" & dateFormat & objAtt.DisplayName
        Next
End if

错误91似乎是VBA的NullReferenceException。