在Outlook中保存附件在不同的文件夹中

时间:2013-01-11 13:41:17

标签: vba outlook outlook-2003

我在互联网上找到了这个代码,你可以自动将附件保存在某个文件夹中:

   Public Sub saveAttachtoDisk(itm As Outlook.MailItem)
Dim objAtt As Outlook.Attachment
Dim saveFolder As String
saveFolder = "C:\Temp"
    For Each objAtt In itm.Attachments
        objAtt.SaveAsFile saveFolder & "\" & objAtt.DisplayName
        Set objAtt = Nothing
    Next
End Sub

有什么方法可以将附件保存在不同的文件夹中吗?

由于

1 个答案:

答案 0 :(得分:2)

您的示例代码对saveAttachtoDisk子目录中的目标文件夹进行了硬编码。您可以通过参数将此信息传递给此子的(变体):

Public Sub saveAttachtoDisk(itm As Outlook.MailItem, saveFolder As String)
  Dim objAtt As Outlook.Attachment
  For Each objAtt In itm.Attachments
      objAtt.SaveAsFile saveFolder & "\" & objAtt.DisplayName
      Set objAtt = Nothing
  Next
End Sub

并将其称为:

Dim saveFolder As String
saveFolder = "C:\Some\Where\Else"
saveAttachtoDisk itm, saveFolder
...
saveAttachtoDisk otheritm, "d:\why\not\here"

当然,现在的问题是:如何确定这些“其他文件夹”?通过用户互动?通过应用于某些Outlook / User / Main / System属性的函数?