VBA to copy sent items to folder

Status
Not open for further replies.

Joseph Cooper

New Member
Outlook version
Outlook 2013 64 bit
Email Account
Exchange Server
One of our users has a script set up which pops up with a folder view when "Send" is clicked. This allows the sent email to be put in to a folder they choose.

The issue is, that they want the email to still go into "Sent Items" as well as their chosen folder.

Code:
Private Sub Application_ItemSend(ByVal Item As Object, _ 
                                 Cancel As Boolean) 
    Dim objNS As NameSpace 
    Dim objFolder As MAPIFolder 
    On Error Resume Next 
    Set objNS = Application.Session 
    If Item.Class = olMail Then 
        Set objFolder = objNS.PickFolder 
        If Not objFolder Is Nothing And _ 
          IsInDefaultStore(objFolder) And _ 
          objFolder.DefaultItemType = olMailItem Then 
            Set Item.SaveSentMessageFolder = objFolder 
        Else 
            Set objFolder = _ 
              objNS.GetDefaultFolder(olFolderSentMail) 
            Set Item.SaveSentMessageFolder = objFolder 
        End If 
    End If 
    Set objFolder = Nothing 
    Set objNS = Nothing 
End Sub 
Public Function IsInDefaultStore(objOL As Object) As Boolean 
    Dim objApp As Outlook.Application 
    Dim objNS As Outlook.NameSpace 
    Dim objInbox As Outlook.MAPIFolder 
    Dim blnBadObject As Boolean 
    On Error Resume Next 
    Set objApp = objOL.Application 
    If Err = 0 Then 
        Set objNS = objApp.Session 
        Set objInbox = objNS.GetDefaultFolder(olFolderInbox) 
        Select Case objOL.Class 
            Case olFolder 
                If objOL.StoreID = objInbox.StoreID Then 
                    IsInDefaultStore = True 
                Else 
                    IsInDefaultStore = False 
                End If 
            Case olAppointment, olContact, olDistributionList, _ 
                 olJournal, olMail, olNote, olPost, olTask 
                If objOL.Parent.StoreID = objInbox.StoreID Then 
                    IsInDefaultStore = True 
                Else 
                    IsInDefaultStore = False 
                End If 
            Case Else 
                blnBadObject = True 
        End Select 
    Else 
        blnBadObject = True 
    End If 
    If blnBadObject Then 
        MsgBox "This function isn't designed to work " & _ 
                "with " & TypeName(objOL) & _ 
                " objects and will return False.", _ 
                , "IsInDefaultStore" 
        IsInDefaultStore = False 
    End If 
    Set objApp = Nothing 
    Set objNS = Nothing 
    Set objInbox = Nothing 
End Function
 
I added this:

Code:
Set msg = Item.Copy 
msg.Move objNS.GetDefaultFolder(olFolderSentMail)

Which worked. but it doesn't save any date information at all. it saves a copy, but the date in "sent items" comes up as "None". and the email is displayed as unread.
 
Fixed this by setting up a rule & alert to copy all sent emails to a folder.

Thanks for your help guys.
 
Try saving it twice - not sure it will work, but it would be the easiest way to address it.
Set Item.SaveSentMessageFolder = objFolder
Set Item.SaveSentMessageFolder =objNS.GetDefaultFolder(olFolderSentMail)

Nevermind :( Bad logic on that one.
 
Status
Not open for further replies.
Similar threads
Thread starter Title Forum Replies Date
B Mark copy of sent email as read - VBA? Outlook VBA and Custom Forms 3
Z VBA to convert email to task, insert text of email in task notes, and attach copy of original email Outlook VBA and Custom Forms 4
B Outlook Business Contact Manager with SQL to Excel, User Defined Fields in BCM don't sync in SQL. Can I use VBA code to copy 1 field to another? BCM (Business Contact Manager) 0
Diane Poremsky Copy New Appointments to Another Calendar using VBA Using Outlook 0
G VBA Copy draft email to a new email - attachments not copided Using Outlook 7
S VBA to identify a specific email and copy the attachment from it to the network Outlook VBA and Custom Forms 4
M How to copy attachments from a Public Folder in VBA Outlook VBA and Custom Forms 3
R How to copy outlook 2010 shared calendar appointment or meeting to personal calendar by vba? Outlook VBA and Custom Forms 1
L VBA to Triage Incoming Email Outlook VBA and Custom Forms 0
J Outlook VBA to send from Non-default Account & Data Files Outlook VBA and Custom Forms 2
H using VBA to edit subject line Outlook VBA and Custom Forms 0
G Get current open draft message body from VBA Outlook VBA and Custom Forms 1
Geldner Problem submitting SPAM using Outlook VBA Form Outlook VBA and Custom Forms 2
P VBA to add email address to Outlook 365 rule Outlook VBA and Custom Forms 0
M Outlook 2016 outlook vba to look into shared mailbox Outlook VBA and Custom Forms 0
V VBA Categories unrelated to visible calendar and Visual appointment Categories Outlook VBA and Custom Forms 2
D Outlook VBA forward the selected email to the original sender’s email ID (including the email used in TO, CC Field) from the email chain Outlook VBA and Custom Forms 2
R Outlook 365 VBA AUTO SEND WITH DELAY FOR EACH EMAIL Outlook VBA and Custom Forms 0
R Outlook 2019 VBA to List Meetings in Rooms Outlook VBA and Custom Forms 0
geoffnoakes Counting and/or listing fired reminders via VBA Using Outlook 1
O VBA - Regex - remove double line spacing Outlook VBA and Custom Forms 1
D.Moore Strange VBA error Outlook VBA and Custom Forms 4
B Modify VBA to create a RULE to block multiple messages Outlook VBA and Custom Forms 0
D Outlook 2021 Using vba code to delete all my spamfolders not only the default one. Outlook VBA and Custom Forms 0
K vba code to auto download email into a specific folder in local hard disk as and when any new email arrives in Inbox/subfolder Outlook VBA and Custom Forms 0
D VBA - unable to set rule condition 'on this computer only' Outlook VBA and Custom Forms 5
L Fetch, edit and forward an email with VBA outlook Outlook VBA and Custom Forms 2
BartH VBA no longer working in Outlook Outlook VBA and Custom Forms 1
W Can vba(for outlook) do these 2 things or not? Outlook VBA and Custom Forms 2
MattC Changing the font of an email with VBA Outlook VBA and Custom Forms 1
P MailItem.To Property with VBA not work Outlook VBA and Custom Forms 2
P Tweak vba so it can target another mailbox Outlook VBA and Custom Forms 1
A Outlook 2010 VBA fails to launch Outlook VBA and Custom Forms 2
richardwing Outlook 365 VBA to access "Other Actions" menu for incoming emails in outlook Outlook VBA and Custom Forms 0
W Create a Quick Step or VBA to SAVE AS PDF in G:|Data|Client File Outlook VBA and Custom Forms 1
J Outlook Rules VBA Run a Script - Multiple Rules Outlook VBA and Custom Forms 0
C Outlook (desktop app for Microsoft365) restarts every time I save my VBA? Using Outlook 1
D VBA Macro to Print and Save email to network location Outlook VBA and Custom Forms 1
TedSch Small vba to kill political email Outlook VBA and Custom Forms 3
E Outlook 365 Outlook/VBA Outlook VBA and Custom Forms 11
N VBA Macro To Save Emails Outlook VBA and Custom Forms 1
Z VBA Forward vs manual forward Outlook VBA and Custom Forms 2
J VBA Cannot programmatically input or change Value for User Defined field Using Outlook 1
J VBA for outlook to compare and sync between calendar Outlook VBA and Custom Forms 1
A Any way to force sort by/group by on search results with VBA? Outlook VBA and Custom Forms 1
E Default shape via VBA Outlook VBA and Custom Forms 4
A Change settings Send/receive VBA Outlook VBA and Custom Forms 0
Z Import Tasks from Access Using VBA including User Defined Fields Outlook VBA and Custom Forms 0
E Outlook VBA change GetDefaultFolder dynamically Outlook VBA and Custom Forms 6
justicefriends How to set a flag to follow up using VBA - for addressee in TO field Outlook VBA and Custom Forms 11

Similar threads

Back
Top