Microsoft
Software
Hardware
Network
Question : Auto Save Email Attachemnt to local disk by Outlook 2003
I find the following codes to auto save the email attachment to local disk, but for some reason, the codes doesn't work. Please Help.
' How to use:
' From Outlook, open the VBEditor (Alt+F11)
' Add a reference to the "Microsoft Excel
Object Library fron Tools>References
' Paste the code into the ThisOutlookSession module
' Create an Outlook folder named "Temp" in your Personal folders (or amend the code: Set TargetFolderItems to eqaul an existing folder)
' Create a directory "C:\Temp" (or amend the constant: FILE_PATH to eqaul an existing folder)
' Save the project
' Restart Outlook (or run the routine "Application_Startup")
' Testing the vba script
' Move a mail item with some attachments into you target folder.
' The attachments will be saved in your specified directory
' Any Excel files will be printed
'#########################
##########
##########
##########
##########
##########
####
'### Module level Declarations
'expose the items in the target folder to events
Option Explicit
Dim WithEvents TargetFolderItems As Items
'set the string constant for the path to save attachments
Const FILE_PATH As String = "C:\Temp\"
'#########################
##########
##########
##########
##########
##########
####
'### this is the Application_Startup event code in the ThisOutlookSession module
Private Sub Application_Startup()
'some startup code to set our "event-sensitive" items collection
Dim ns As Outlook.NameSpace
'
Set ns = Application.GetNamespace("
MAPI")
Set TargetFolderItems = ns.Folders.Item( _
"Personal Folders").Folders.Item("Te
mp").Items
End Sub
'#########################
##########
##########
##########
##########
##########
####
'### this is the ItemAdd event code
Sub TargetFolderItems_ItemAdd(
ByVal Item As Object)
'when a new item is added to our "watched folder" we can process it
Dim olAtt As Attachment
Dim i As Integer
If Item.Attachments.Count > 0 Then
For i = 1 To Item.Attachments.Count
Set olAtt = Item.Attachments(i)
'save the attachment
olAtt.SaveAsFile FILE_PATH & olAtt.FileName
End If
Next
End If
Set olAtt = Nothing
End Sub
'#########################
##########
##########
##########
##########
##########
####
'### this is the Application_Quit event code in the ThisOutlookSession module
Private Sub Application_Quit()
Dim ns As Outlook.NameSpace
Set TargetFolderItems = Nothing
Set ns = Nothing
End Sub
Answer : Auto Save Email Attachemnt to local disk by Outlook 2003
That's because of the Option Explicit statement at the top. Either remove it or add this
Dim strCommand, objShell
Random Solutions
"Content-Type: application/x-unknown " , different response in IE 4.0 & 5.0
Determine distance from US border
Exchange 2003 used for relaying, sending thousands of messages
MS Access 2003 Toggling a Subform from Datasheet to Form view
how to open port 25
How to Split a Ms Word Doc into Several Ms Word Docs using VBA?
parsing a string using Shell script
utitlity function in oracle to check for data in table exists
Windows 2003 Very Slow [Bootup / Hibernate / Performance]
How do you create a slideshow (with forward and next buttons and dynamic captions using swf files?