Tip: Other languages are Google-Translated. You can visit the English version of this link.
Log in


How to copy all attachments from multiple emails to a new email in Outlook?

In general, it’s easy to copy attachments from one email to another with copying and pasting in Outlook. But how about copying attachments from multiple emails to a new one? This article will introduce the solutions for you.

Kutools for Outlook: 100+ New Advanced Tools for Outlook.
Office Tab: Enable Tabbed Editing and Browsing in Office, Just Like Chrome, Firefox, IE 8/9/10.
Classic Menu: Bring Old Menus and Toolbars Back to Office 2007, 2010, 2013, 2016 and 2019.

Copy all attachments from multiple emails to a new email

This article will introduce a VBA to quickly copy all attachments from multiple emails to a new one in Outlook. Please do as follows:

1. Select multiple emails whose attachments you will copy, and press Alt + F11 keys to open the Microsoft Visual Basic for Applications window.
Note: Holding Ctrl key, you can select multiple nonadjacent emails with clicking them one by one; holding Shift key, you can select multiple adjacent emails with clicking the first one and the last one.

2. Click Insert > Module, and then paste below VBA code into the new Module window.

VBA: Copy all attachments from multiple emails to a new one

Sub NewEmailInsertAttachmentsName()
Dim xSelection As Outlook.Selection
Dim xMailItem As Outlook.MailItem
Dim xAttachment As Outlook.Attachment
Dim xFSO As Object
Dim xFldPath As String

Dim xFilePath As String
Dim xNewMail As Outlook.MailItem
On Error Resume Next
Set xSelection = Outlook.Application.ActiveExplorer.Selection
Set xNewMail = Outlook.Application.CreateItem(olMailItem)
Set xFSO = CreateObject("Scripting.FileSystemObject")
xFldPath = xFSO.GetSpecialFolder(2).Path & "\MyAttachments"
If xFSO.FolderExists(xFldPath) = False Then
xFSO.CreateFolder (xFldPath)
End If

For Each xMailItem In xSelection
For Each xAttachment In xMailItem.Attachments
xFilePath = xFldPath & "\" & xAttachment.FileName
xAttachment.SaveAsFile (xFilePath)
xNewMail.Attachments.Add (xFilePath)
xFSO.DeleteFile (xFilePath)
End Sub

3. Press F5 key or the Run button to run this VBA.

Now you will see all attachments are copied from the selected emails, and pasted into a new email.

Copy all attachments from an email to its replying email

If you have Kutools for Outlook installed, you can apply its Reply with Attachment feature to easily copy all attachments from an email to its replying email in Outlook. Please do as follows:

Kutools for Outlook - With more than 20 handy Outlook add-ins, free to try with no limitation in 60 days

Select the email you will reply, and click Kutools > Reply with Attachment > Reply with Attachment. See screenshot:

Now you will see all attachments are copied to the replying email automatically.

Related Articles


Recommended Productivity Tools

shot kutools outlook kutools tab 1180x121
shot kutools outlook kutools plus tab 1180x121

Kutools for Outlook - More than 100 Advanced Functions for Outlook, Improve 70% Efficiency For you

  • Complicated and repeated operations can be done a one-time processing in seconds.
  • Forward multiple emails individually with one-click, and auto forward by rules.
  • Auto CC/BCC every sending email and easy for customizing rules, and auto reply without requiring exchange server.
  • Powerful junk emails filter, remove duplicate emails, reply with attachment, bunch of one-click operations, and so on...
  • 60-day unlimited free trial. 60-day money back guarantee. 2 years free upgrade and support. Buy once, use forever.
Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.

Be the first to comment.