If you would like to send the attached messages as new email messages, you can use either method introduced in this article to get it.
In my previous article “How to Auto Extract Attached Messages from an Incoming Email Message to Your Inbox”, you can learn how to extract and save the attached messages to Inbox folder via Outlook VBA. But sometimes, you may want to reuse the attached messages to send out them as fresh new emails. For this wish, here we will expose 2 related ways to you. One is doing manually. And the other one is using a piece of VBA code. Now read on to get them in detail.
Method 1: Send Manually
- To start with, get into your Outlook mailbox.
- Then open an email which contains the other mails as attachments.
- Next double click on an attached message to open it.
- After opening the attached message in new window, you can click “Actions” > “Resend This Message”.
- Subsequently, you’ll be warned that you are not the original sender. But you can persist via selecting “Yes”.
- After that, a new email message using the attached message will display.
- Finally you can compose the new email at will and then hit “Send” button to send it out as usual.
Method 2: Send via Outlook VBA
- In the first place, press “Alt + F11” key buttons in main Outlook window.
- Then you will enter the Outlook VBA editor window.
- Subsequently, copy the following VBA code into an empty module.
Private Sub SendAttachedMessagesAsNewEmails() Dim objMail As Outlook.MailItem Dim objAttachments As Outlook.attachments Dim i As Long Dim objAttachedMessage As Outlook.Attachment Dim objFileSystem As Object Dim strTempFolderPath As String Dim strFilePath As String Dim objNewMail As Outlook.MailItem On Error Resume Next Set objMail = Outlook.Application.ActiveExplorer.Selection.Item(1) Set objAttachments = objMail.attachments If objAttachments.Count > 0 Then For i = objAttachments.Count To 1 Step -1 'Get the attached messages If Right(LCase(objAttachments.Item(i).FileName), 3) = "msg" Then Set objAttachedMessage = objAttachments.Item(i) 'Save the attached messages in the temporary folder Set objFileSystem = CreateObject("Scripting.FileSystemObject") strTempFolderPath = objFileSystem.GetSpecialFolder(2).Path & "\Temp" & Format(Now, "YYYY-MM-DD hh-mm-ss") MkDir (strTempFolderPath) strFilePath = strTempFolderPath & "\" & objAttachedMessage.FileName objAttachedMessage.SaveAsFile (strFilePath) Set objNewMail = Outlook.Application.CreateItemFromTemplate(strFilePath) 'You can also predefine the new email's details like the following lines 'With objNewMail '.Subject = " XXXXXXX " '.To = "firstname.lastname@example.org" '.Importance = olImportanceHigh '...... (define more as per your needs) 'End With 'Use "objNewMail.Send" to send it out objNewMail.Display 'Delete the message files from the temporary folder objFileSystem.DeleteFile (strTempFolderPath) End If Next i End If End Sub
- After that, you can add the new macro to Quick Access Toolbar.
- Eventually you can have a try.
- Firstly, select an email which contains such attached messages.
- Then click the macro button in Quick Access Toolbar.
- At once, several new mail messages creating from the attached messages will display in new windows.
Ways to Salvage Your Outlook Data
It is common that Outlook tends to crash. Therefore, you should prepare some effective rescue plans in case of damaged Outlook data. For instance, you should keep a powerful and experienced repair tool in vicinity, like DataNumen Outlook Repair.
Shirley Zhang is a data recovery expert in DataNumen, Inc., which is the world leader in data recovery technologies, including damaged mdf and outlook repair software products. For more information visit www.datanumen.com