![]() |
If this is your first visit, be sure to check out the FAQ by clicking the link above. You may have to register before you can post: click the register link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below. |
|
|
Thread Tools | Search this Thread | Display Modes |
|
#1
|
|||
|
|||
![]()
Hi
I am trying to find a macro to save the attachment automatically every time I receive emails from the same person. The following is my macro. I have set up the rule to run the script (macro) when the condition is met. I receive three different emails that meet the condition and they are all coming at about the same time. However, the script doesn't work at all and I got the error message "rule operation failed". Sometimes, it works for one email and sometimes, it doesn't work at all. Please help!! Thanks in advance. Or if you have a better way to do this, please let me know. Sub SaveAttachment(Item As Outlook.MailItem) Dim myOlApp As Outlook.Application Dim myInspector As Outlook.Inspector Dim myItem As Outlook.MailItem Dim myAttachments As Outlook.Attachments Set myItem = Application.Session.GetDefaultFolder(olFolderInbox ).Items(1) myItem.Display Set myOlApp = CreateObject("Outlook.Application") Set myInspector = myOlApp.ActiveInspector If Not TypeName(myInspector) = "Nothing" Then If TypeName(myInspector.CurrentItem) = "MailItem" Then Set myItem = myInspector.CurrentItem Set myAttachments = myItem.Attachments myAttachments.Item(1).SaveAsFile "c:\" & _ myAttachments.Item(1).DisplayName myItem.Close olDiscard End If Else ' MsgBox "The item is of the wrong type." myItem.Close olDiscard End If End Sub |
#2
|
|||
|
|||
![]()
The MailItem object that you should be working with is Item, the item passed as a parameter to the event handler, not myItem. You do not need to display it. Just work with its Attachments collection:
Set myAttachments = Item.Attachments etc. -- Sue Mosher, Outlook MVP Author of Configuring Microsoft Outlook 2003 http://www.turtleflock.com/olconfig/index.htm and Microsoft Outlook Programming - Jumpstart for Administrators, Power Users, and Developers http://www.outlookcode.com/jumpstart.aspx "joannele71" wrote in message ... Hi I am trying to find a macro to save the attachment automatically every time I receive emails from the same person. The following is my macro. I have set up the rule to run the script (macro) when the condition is met. I receive three different emails that meet the condition and they are all coming at about the same time. However, the script doesn't work at all and I got the error message "rule operation failed". Sometimes, it works for one email and sometimes, it doesn't work at all. Please help!! Thanks in advance. Or if you have a better way to do this, please let me know. Sub SaveAttachment(Item As Outlook.MailItem) Dim myOlApp As Outlook.Application Dim myInspector As Outlook.Inspector Dim myItem As Outlook.MailItem Dim myAttachments As Outlook.Attachments Set myItem = Application.Session.GetDefaultFolder(olFolderInbox ).Items(1) myItem.Display Set myOlApp = CreateObject("Outlook.Application") Set myInspector = myOlApp.ActiveInspector If Not TypeName(myInspector) = "Nothing" Then If TypeName(myInspector.CurrentItem) = "MailItem" Then Set myItem = myInspector.CurrentItem Set myAttachments = myItem.Attachments myAttachments.Item(1).SaveAsFile "c:\" & _ myAttachments.Item(1).DisplayName myItem.Close olDiscard End If Else ' MsgBox "The item is of the wrong type." myItem.Close olDiscard End If End Sub |
#3
|
|||
|
|||
![]()
Hi Sue,
Thank you for your help. After making the changes as per your suggestion, it worked well when I did my testing. My testing was continuously sending 3 emails to myself and the script was able to save the attachment to the c:\. However, I got the error message "rule operation failed" when it comes to the real situation. Do you know what should I do? and why? Thanks "Sue Mosher [MVP-Outlook]" wrote: The MailItem object that you should be working with is Item, the item passed as a parameter to the event handler, not myItem. You do not need to display it. Just work with its Attachments collection: Set myAttachments = Item.Attachments etc. -- Sue Mosher, Outlook MVP Author of Configuring Microsoft Outlook 2003 http://www.turtleflock.com/olconfig/index.htm and Microsoft Outlook Programming - Jumpstart for Administrators, Power Users, and Developers http://www.outlookcode.com/jumpstart.aspx "joannele71" wrote in message ... Hi I am trying to find a macro to save the attachment automatically every time I receive emails from the same person. The following is my macro. I have set up the rule to run the script (macro) when the condition is met. I receive three different emails that meet the condition and they are all coming at about the same time. However, the script doesn't work at all and I got the error message "rule operation failed". Sometimes, it works for one email and sometimes, it doesn't work at all. Please help!! Thanks in advance. Or if you have a better way to do this, please let me know. Sub SaveAttachment(Item As Outlook.MailItem) Dim myOlApp As Outlook.Application Dim myInspector As Outlook.Inspector Dim myItem As Outlook.MailItem Dim myAttachments As Outlook.Attachments Set myItem = Application.Session.GetDefaultFolder(olFolderInbox ).Items(1) myItem.Display Set myOlApp = CreateObject("Outlook.Application") Set myInspector = myOlApp.ActiveInspector If Not TypeName(myInspector) = "Nothing" Then If TypeName(myInspector.CurrentItem) = "MailItem" Then Set myItem = myInspector.CurrentItem Set myAttachments = myItem.Attachments myAttachments.Item(1).SaveAsFile "c:\" & _ myAttachments.Item(1).DisplayName myItem.Close olDiscard End If Else ' MsgBox "The item is of the wrong type." myItem.Close olDiscard End If End Sub |
#4
|
|||
|
|||
![]()
What is the difference between "the real situation" and your tests?
-- Sue Mosher, Outlook MVP Author of Configuring Microsoft Outlook 2003 http://www.turtleflock.com/olconfig/index.htm and Microsoft Outlook Programming - Jumpstart for Administrators, Power Users, and Developers http://www.outlookcode.com/jumpstart.aspx "joannele71" wrote in message ... Hi Sue, Thank you for your help. After making the changes as per your suggestion, it worked well when I did my testing. My testing was continuously sending 3 emails to myself and the script was able to save the attachment to the c:\. However, I got the error message "rule operation failed" when it comes to the real situation. Do you know what should I do? and why? Thanks "Sue Mosher [MVP-Outlook]" wrote: The MailItem object that you should be working with is Item, the item passed as a parameter to the event handler, not myItem. You do not need to display it. Just work with its Attachments collection: Set myAttachments = Item.Attachments "joannele71" wrote in message ... Hi I am trying to find a macro to save the attachment automatically every time I receive emails from the same person. The following is my macro. I have set up the rule to run the script (macro) when the condition is met. I receive three different emails that meet the condition and they are all coming at about the same time. However, the script doesn't work at all and I got the error message "rule operation failed". Sometimes, it works for one email and sometimes, it doesn't work at all. Please help!! Thanks in advance. Or if you have a better way to do this, please let me know. Sub SaveAttachment(Item As Outlook.MailItem) Dim myOlApp As Outlook.Application Dim myInspector As Outlook.Inspector Dim myItem As Outlook.MailItem Dim myAttachments As Outlook.Attachments Set myItem = Application.Session.GetDefaultFolder(olFolderInbox ).Items(1) myItem.Display Set myOlApp = CreateObject("Outlook.Application") Set myInspector = myOlApp.ActiveInspector If Not TypeName(myInspector) = "Nothing" Then If TypeName(myInspector.CurrentItem) = "MailItem" Then Set myItem = myInspector.CurrentItem Set myAttachments = myItem.Attachments myAttachments.Item(1).SaveAsFile "c:\" & _ myAttachments.Item(1).DisplayName myItem.Close olDiscard End If Else ' MsgBox "The item is of the wrong type." myItem.Close olDiscard End If End Sub |
#5
|
|||
|
|||
![]()
I can't think of any differences except the emails are sending by someone
else and I may receive some other emails at the same time. I receive the 3 emails daily and they come in one after they other within 2 minutes. thanks "Sue Mosher [MVP-Outlook]" wrote: What is the difference between "the real situation" and your tests? -- Sue Mosher, Outlook MVP Author of Configuring Microsoft Outlook 2003 http://www.turtleflock.com/olconfig/index.htm and Microsoft Outlook Programming - Jumpstart for Administrators, Power Users, and Developers http://www.outlookcode.com/jumpstart.aspx "joannele71" wrote in message ... Hi Sue, Thank you for your help. After making the changes as per your suggestion, it worked well when I did my testing. My testing was continuously sending 3 emails to myself and the script was able to save the attachment to the c:\. However, I got the error message "rule operation failed" when it comes to the real situation. Do you know what should I do? and why? Thanks "Sue Mosher [MVP-Outlook]" wrote: The MailItem object that you should be working with is Item, the item passed as a parameter to the event handler, not myItem. You do not need to display it. Just work with its Attachments collection: Set myAttachments = Item.Attachments "joannele71" wrote in message ... Hi I am trying to find a macro to save the attachment automatically every time I receive emails from the same person. The following is my macro. I have set up the rule to run the script (macro) when the condition is met. I receive three different emails that meet the condition and they are all coming at about the same time. However, the script doesn't work at all and I got the error message "rule operation failed". Sometimes, it works for one email and sometimes, it doesn't work at all. Please help!! Thanks in advance. Or if you have a better way to do this, please let me know. Sub SaveAttachment(Item As Outlook.MailItem) Dim myOlApp As Outlook.Application Dim myInspector As Outlook.Inspector Dim myItem As Outlook.MailItem Dim myAttachments As Outlook.Attachments Set myItem = Application.Session.GetDefaultFolder(olFolderInbox ).Items(1) myItem.Display Set myOlApp = CreateObject("Outlook.Application") Set myInspector = myOlApp.ActiveInspector If Not TypeName(myInspector) = "Nothing" Then If TypeName(myInspector.CurrentItem) = "MailItem" Then Set myItem = myInspector.CurrentItem Set myAttachments = myItem.Attachments myAttachments.Item(1).SaveAsFile "c:\" & _ myAttachments.Item(1).DisplayName myItem.Close olDiscard End If Else ' MsgBox "The item is of the wrong type." myItem.Close olDiscard End If End Sub |
#6
|
|||
|
|||
![]()
I have played around with this code a little bit and it seems to execute
within but it doesn't give a dialog bix where I can select a location and file name nor can I find a directory where the attachments are being saved. Is there a default location I am overlooking within the code? "joannele71" wrote: I can't think of any differences except the emails are sending by someone else and I may receive some other emails at the same time. I receive the 3 emails daily and they come in one after they other within 2 minutes. thanks "Sue Mosher [MVP-Outlook]" wrote: What is the difference between "the real situation" and your tests? -- Sue Mosher, Outlook MVP Author of Configuring Microsoft Outlook 2003 http://www.turtleflock.com/olconfig/index.htm and Microsoft Outlook Programming - Jumpstart for Administrators, Power Users, and Developers http://www.outlookcode.com/jumpstart.aspx "joannele71" wrote in message ... Hi Sue, Thank you for your help. After making the changes as per your suggestion, it worked well when I did my testing. My testing was continuously sending 3 emails to myself and the script was able to save the attachment to the c:\. However, I got the error message "rule operation failed" when it comes to the real situation. Do you know what should I do? and why? Thanks "Sue Mosher [MVP-Outlook]" wrote: The MailItem object that you should be working with is Item, the item passed as a parameter to the event handler, not myItem. You do not need to display it. Just work with its Attachments collection: Set myAttachments = Item.Attachments "joannele71" wrote in message ... Hi I am trying to find a macro to save the attachment automatically every time I receive emails from the same person. The following is my macro. I have set up the rule to run the script (macro) when the condition is met. I receive three different emails that meet the condition and they are all coming at about the same time. However, the script doesn't work at all and I got the error message "rule operation failed". Sometimes, it works for one email and sometimes, it doesn't work at all. Please help!! Thanks in advance. Or if you have a better way to do this, please let me know. Sub SaveAttachment(Item As Outlook.MailItem) Dim myOlApp As Outlook.Application Dim myInspector As Outlook.Inspector Dim myItem As Outlook.MailItem Dim myAttachments As Outlook.Attachments Set myItem = Application.Session.GetDefaultFolder(olFolderInbox ).Items(1) myItem.Display Set myOlApp = CreateObject("Outlook.Application") Set myInspector = myOlApp.ActiveInspector If Not TypeName(myInspector) = "Nothing" Then If TypeName(myInspector.CurrentItem) = "MailItem" Then Set myItem = myInspector.CurrentItem Set myAttachments = myItem.Attachments myAttachments.Item(1).SaveAsFile "c:\" & _ myAttachments.Item(1).DisplayName myItem.Close olDiscard End If Else ' MsgBox "The item is of the wrong type." myItem.Close olDiscard End If End Sub |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
unable to save attachment-- Outlook 2003, C# | Krishna | Add-ins for Outlook | 2 | January 29th 07 05:54 PM |
save attachment in calendar | jvl_runner | Outlook - Calandaring | 1 | January 22nd 07 01:21 PM |
Automatically inserting the name of an attachment into the email t | Montana | Outlook and VBA | 1 | August 3rd 06 05:42 AM |
How do I save an outlook calendar to send as an attachment? | blancogato | Outlook - Calandaring | 1 | August 1st 06 03:54 AM |
Outlook 2003 needs save contact automatically when replying featur | Missy | Outlook - Using Contacts | 5 | June 6th 06 09:56 PM |