我正在尝试在Outlook中编写一个VBA宏,可以将电子邮件附件保存到特定文件夹,并将收件日期添加到文件名中。
我的搜索已经让我走了这么远:
Public Sub saveAttachtoDisk (itm As Outlook.MailItem)
Dim objAtt As Outlook.Attachment
Dim saveFolder As String
Dim dateFormat As String
saveFolder = "C:\Temp\"
dateFormat = Format(Now, "yyyy-mm-dd H-mm")
For Each objAtt In itm.Attachments
objAtt.SaveAsFile saveFolder & "\" & dateFormat & objAtt.DisplayName
Set objAtt = Nothing
Next
End Sub
显而易见的第一个问题是它将当前时间应用于文件名,而不是接收时间,但我似乎无法更改它。我的理论是Outlook.Attachment没有 ReceivedTime
,必须引用电子邮件本身。
其次,这根本不起作用,哈!我刚开始尝试时可以正常工作,但之后它就停止保存文件了。