Solved

How do I set sent emails to specific folders?

Posted on 2008-10-14
7
293 Views
Last Modified: 2010-04-21
I know outlook has the ability to put sent emails in folders that you are replying from. What is a macro that will save ANY message (new messages, etc) in the CURRENTLY SELECTED folder?

I need the ability to save a sent message in the folder that is currently selected, no matter what or who I send it to.
0
Comment
Question by:Takamine334
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 3
7 Comments
 
LVL 76

Accepted Solution

by:
David Lee earned 500 total points
ID: 22719191
Hi, Jason.

Outlook has a setting that does this for replies, but only replies.  Doing it for all items will require a bit of code like that below.  There are limitations to this though.  Every folder has a property called DefaultItemType that restricts the kind of items that can go in it.  A calendar folder can only contain appointments, a contacts folder only contacts, etc.  A calendar cannot contain a sent mail item and it's possible to send a message while viewing a calendar.  So, to avoid any errors, the code checks the current folder to see if it can hole a mail item.  If it can, then it saves the sent item there.  If not, then the sent item will go to Sent Items.  

This code must go in the ThisOutlookSession module.
Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
    Dim olkFolder As Outlook.MAPIFolder
    If Item.Class = olMail Then
        Set olkFolder = Application.ActiveExplorer.CurrentFolder
        Select Case olkFolder.DefaultItemType
            Case olMailItem, olPostItem
                Set Item.SaveSentMessageFolder = olkFolder
                Item.Save
        End Select
    End If
    Set olkFolder = Nothing
End Sub

Open in new window

0
 

Author Closing Comment

by:Takamine334
ID: 31506167
Thank you! You saved me SOOOO much hassle! I work with one other client and this will make our job a lot easier. Thank you!!
0
 
LVL 76

Expert Comment

by:David Lee
ID: 22723897
No problem.  Always glad to help out.
0
 [eBook] Windows Nano Server

Download this FREE eBook and learn all you need to get started with Windows Nano Server, including deployment options, remote management
and troubleshooting tips and tricks

 

Author Comment

by:Takamine334
ID: 22724011
I'm sorry to further complicate things. Is there a way to only run this code if the folder selected is in the BOOKING PST?
0
 
LVL 76

Expert Comment

by:David Lee
ID: 22743513
No problem.  Try this.  Notice the comments in the code.
Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
    Dim olkFolder As Outlook.MAPIFolder
    If Item.Class = olMail Then
        Set olkFolder = Application.ActiveExplorer.CurrentFolder
        'Replace Booking with the name of the folder as it appears in Outlook folder view
        If RootFolder(olkFolder) = "Booking" Then
            Select Case olkFolder.DefaultItemType
                Case olMailItem, olPostItem
                    Set Item.SaveSentMessageFolder = olkFolder
                    Item.Save
            End Select
        End If
    End If
    Set olkFolder = Nothing
End Sub
 
Function RootFolder(olkFolder As Outlook.Folder) As String
    Dim olkStore As Outlook.Store
    Set olkStore = Session.GetStoreFromID(olkFolder.StoreID)
    RootFolder = olkStore.DisplayName
    Set olkStore = Nothing
End Function

Open in new window

0
 

Author Comment

by:Takamine334
ID: 22743762
Thank you so much!
0
 
LVL 76

Expert Comment

by:David Lee
ID: 22743909
No problem.
0

Featured Post

Visualize your virtual and backup environments

Create well-organized and polished visualizations of your virtual and backup environments when planning VMware vSphere, Microsoft Hyper-V or Veeam deployments. It helps you to gain better visibility and valuable business insights.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article will help to fix the below errors for MS Exchange Server 2013 I. Certificate error "name on the security certificate is invalid or does not match the name of the site" II. Out of Office not working III. Make Internal URLs and Externa…
Outlook for dependable use in a very small business   This article is about using the Outlook application (part of Microsoft Office) in a very small business, or for homeowners where dependability and reliability are critical requirements. This …
Get people started with the process of using Access VBA to control Outlook using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Microsoft Outlook. Using automation, an Access applic…
This is my first video review of Microsoft Bookings, I will be doing a part two with a bit more information, but wanted to get this out to you folks.

630 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question