How to Save All Outlook Attachments to a Folder at Once
🔍 WiseChecker

How to Save All Outlook Attachments to a Folder at Once

You have an email with multiple attachments and need to save them all quickly. Manually saving each file one by one is slow and inefficient. Outlook provides built-in methods to extract all attachments from a message in a single action. This article explains the step-by-step process for saving all attachments to a folder on your computer or OneDrive.

Key Takeaways: Save All Outlook Attachments

  • File > Save All Attachments: The primary command to extract every file from a selected email to a folder on your PC.
  • Drag and drop from the Reading Pane: Select all attachments in the preview and drag them directly to a File Explorer window.
  • VBA Macro: Automates saving attachments from multiple selected emails at once, which the standard command cannot do.

Methods for Saving Multiple Attachments

Outlook offers different ways to save attachments, each suited for specific scenarios. The standard Save All Attachments command works on a single opened email. For quicker actions, you can use drag and drop from the reading pane. If you need to process many emails, a simple Visual Basic for Applications macro is the most efficient tool. All methods require you to have write permissions for the destination folder.

Using the Save All Attachments Command

This is the standard method within the Outlook ribbon. It works when you have a single email message open or selected in your inbox. The command saves every file attached to that specific message.

  1. Open or select the email
    Double-click the message with attachments to open it in a separate window. Alternatively, select it once in your message list.
  2. Go to the Attachments tab
    With the email open, click the Attachments tab on the ribbon. If the message is merely selected, go to the File menu instead.
  3. Click Save All Attachments
    In the Attachments tab, click the Save All Attachments button. From the File menu, choose Save Attachments and then Save All Attachments.
  4. Choose a destination folder
    A dialog box will appear listing all files. Click OK. Then, navigate to and select the folder on your computer where you want to save the files.

Using Drag and Drop from the Reading Pane

This method is faster if you use the reading pane and only need to save attachments from one email. You can drag files directly to your desktop or a File Explorer window.

  1. Display the email in the Reading Pane
    Select the email so its contents appear in the Reading Pane at the right or bottom of your Outlook window.
  2. Select all attachments
    In the Reading Pane, click on one attachment icon. Then press Ctrl+A to select every attached file in the message.
  3. Drag the files to a folder
    Click and hold on one of the selected attachments, then drag the group to an open File Explorer window or your desktop. Release the mouse button to drop and save the files.

Creating a Macro to Save Attachments from Multiple Emails

The built-in Save All Attachments command only works on one email at a time. A VBA macro can process several selected emails simultaneously. You must first enable the Developer tab in Outlook to use this method.

  1. Enable the Developer tab
    Go to File > Options > Customize Ribbon. On the right side, check the box for Developer and click OK.
  2. Open the Visual Basic Editor
    Click the new Developer tab on the ribbon, then click Visual Basic. Alternatively, press Alt+F11.
  3. Insert a new module and paste the code
    In the editor, go to Insert > Module. Paste the following macro code into the blank module window.

    Sub SaveAttachmentsFromSelection()
    Dim selItem As Object
    Dim att As Attachment
    Dim saveFolder As String
    saveFolder = “C:\Outlook Attachments\”
    For Each selItem In Application.ActiveExplorer.Selection
    For Each att In selItem.Attachments
    att.SaveAsFile saveFolder & att.FileName
    Next att
    Next selItem
    End Sub

  4. Modify the save folder path
    In the code, change the path within the quotes for `saveFolder` to your desired folder, like “D:\My Files\”. Ensure the folder already exists.
  5. Run the macro
    Close the editor. Select multiple emails in your inbox. Go to Developer > Macros, select the SaveAttachmentsFromSelection macro, and click Run.

Common Mistakes and Limitations

Knowing what does not work helps avoid frustration when managing attachments.

Save All Attachments is Grayed Out

This usually happens if no email is selected, if the selected email has no attachments, or if you are using Outlook in Online mode with a Microsoft 365 account. Switch to Cached Exchange Mode in Account Settings to enable the feature. Also, the command is not available in the Outlook on the web interface.

Macro Security Blocks the Code

Outlook may block macros by default. To allow your macro to run, go to File > Options > Trust Center > Trust Center Settings > Macro Settings. Select the option for “Notifications for all macros” or “Enable all macros” for testing only. Always restart Outlook after changing this setting.

Attachments with the Same Name Overwrite Each Other

If two attached files have identical names, the second file saved will overwrite the first. The standard Save All Attachments dialog warns you about this. The macro provided does not include this warning. You can modify the macro code to append a timestamp to duplicate filenames.

Attachment Saving Methods Comparison

Item Save All Attachments Command Drag and Drop VBA Macro
Best for Single email with many files Quick save from Reading Pane Batch processing multiple emails
Speed Medium Fast Fast after setup
Requires Outlook restart No No No
Can handle multiple selected emails No No Yes
Risk of overwriting files Shows warning No warning No warning in basic code

You can now efficiently save all files from an email without manual clicks. Try the drag-and-drop method for your next email with attachments. For advanced users, explore other macro commands to automatically sort attachments into subfolders by sender name or date.