Advertisement
gaixixon

script to save outlook mail attachment

Jul 20th, 2015
358
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. 'with improvement to save files based on extention, and categorized by date
  2. 'gaixixon@gmail.com
  3. Public Function checkDir(strFullPath As String) As Boolean
  4.     If Len(Dir(strFullPath, vbDirectory)) = 0 Then
  5.         checkDir = False
  6.     Else
  7.         checkDir = True
  8.     End If
  9. End Function
  10.  
  11.  
  12.  
  13. 'with improvement to save files based on extention, and categorized by date
  14. 'gaixixon@gmail.com
  15.  
  16. Sub saveAttachtoDiskz(itm As Outlook.MailItem)
  17. Dim objAtt As Outlook.Attachment
  18. Dim saveFolder As String
  19. Dim dateFormat
  20. Dim filetype As String
  21.  
  22.  
  23. dateFormat = Format(Now, "YYYY-mm-dd") 'SAVE THE ATTACHMENTS IN FOLDERS BASED ON YEAR-MONTH-DATE RECEIVED'
  24. saveFolder = "d:\tmp\Outlook Attachment" ' ROOT LOCATION WHERE ATTACHMENTS ARE SAVED'
  25. filetype = ".pDf; .docx; .doc"    ' FILE TYPES THAT NEED TO BE SAVED, SEPERATED BY ;'
  26.  
  27.  
  28. tmp = Split(saveFolder, "\")
  29. saveFolder = tmp(0)
  30. For i = LBound(tmp) + 1 To UBound(tmp)
  31. saveFolder = saveFolder & "\" & tmp(i)
  32. If Not checkDir(saveFolder) Then MkDir saveFolder
  33. Next i
  34.  
  35.  
  36. For Each objAtt In itm.Attachments
  37.     If InStr(UCase(filetype), UCase(Split(objAtt.DisplayName, ".")(UBound(Split(objAtt.DisplayName, "."))))) > 0 Then
  38.         If Not checkDir(saveFolder & "\" & dateFormat) Then MkDir (saveFolder & "\" & dateFormat)
  39.         objAtt.SaveAsFile saveFolder & "\" & dateFormat & "\" & itm.SenderEmailAddress & " - " & objAtt.DisplayName
  40.     End If
  41.    
  42. Set objAtt = Nothing
  43.  
  44. Next
  45. End Sub
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement