How to print all attachments in one/multiple emails in Outlook?
As you know, it will only print the email content such as header, body when you click the File > Print in Microsoft Outlook, but not print the attachments. Here we will show you how to print all attachments in a selected email at ease in Microsoft Outlook.
- Print all attachments in one email message one by one
- Batch print all attachments in one email message
- Batch print all attachments in multiple selected emails
Microsoft Outlook provides us with Quick Print feature, which can help you print attachments in an email message one by one.
1. Select the email message whose attachments you will print later.
2. Click one attachment in this email.
3. Click the Quick Print button in the Actions group on the Attachments tab.
Note: the Attachment Tools won’t be activated until you click attachments in emails.
4. An Opening Mail Attachments comes out, and please click the Open button in it.
Please note that this step will open the selected attachment, and print this selected attachment at the same time.
To print other attachments in this email, please repeat the Step 2 to Step 4.
If there are many attachments in the selected email message, it will be time-consuming to print them one by one. And the follow method will walk you through batch printing all attachments in one email messages easily.
1. Select the email message whose attachments you will print later.
2. In Outlook 2010 or later versions, please click the File > Print > Print Options. See the following screen shot:
3. In the Print dialog box, Please check the Print attached files. Attachments will print to the default printer only. option in the Print options section.
4. Click the Print button.
5. In the popping out Opening Mail Attachment dialog box, please click the Open button to go ahead. (Note: This dialog box will pop out for each attachment separately.)
Now all attachments in this selected email message will be printed together.
To print all attachments in multiple emails in Outlook, please follow below steps to apply the VBA code.
1. In the mailing list, please hold Ctrl or Shift keys to select multiple emails whose attachments you will print.
2. Press Alt + F11 keys together to open the Microsoft Visual Basic for Applications window.
3. Click Insert > Module, and then paste below VBA code into the new module window.
VBA: Print all attachments in multiple Outlook emails
Sub PrintAllAttachmentsInMultipleMails() Dim xFileSystemObj, xShellApp As Object Dim xNameSpace, xNameSpaceItem, xItem As Object Dim xTempFldPath, xFilePath As String Dim xSelItems As Outlook.Selection Dim xMailItem As Outlook.MailItem Dim xAttachments As Outlook.Attachments Dim xAttachment As Outlook.Attachment On Error Resume Next Set xFileSystemObj = CreateObject("Scripting.FileSystemObject") xTempFldPath = xFileSystemObj.GetSpecialFolder(2).Path & "\Attachments " & Format(Now, "yyyymmddhhmmss") 'xFileSystemObj.GetSpecialFolder(2) For saving temporary files If xFileSystemObj.FolderExists(xTemfldpath) = False Then 'create temporary folder xFileSystemObj.CreateFolder (xTempFldPath) End If Set xSelItems = Outlook.ActiveExplorer.Selection Set xShellApp = CreateObject("Shell.Application") Set xNameSpace = xShellApp.NameSpace(0) For Each xItem In xSelItems If xItem.Class = OlObjectClass.olMail Then Set xMailItem = xItem Set xAttachments = xMailItem.Attachments For Each xAttachment In xAttachments xFilePath = xTempFldPath & "\" & xAttachment.FileName xAttachment.SaveAsFile (xFilePath) Set xNameSpaceItem = xNameSpace.ParseName(xFilePath) xNameSpaceItem.InvokeVerbEx ("print") Next End If Next Set xItem = Nothing Set xNameSpaceItem = Nothing Set xNameSpace = Nothing Set xShellApp = Nothing Set xFileSystemObj = Nothing End Sub
4. Press F5 key or click the Run button to run this VBA code.
Now all attachments in the selected emails are printed out.
- Auto CC/BCC by rules when sending email; Auto Forward Multiple Emails by custom; Auto Reply without exchange server, and more automatic features...
- BCC Warning - show message when you try to reply all if your mail address is in the BCC list; Remind When Missing Attachments, and more remind features...
- Reply (All) With All Attachments in the mail conversation; Reply Many Emails in seconds; Auto Add Greeting when reply; Add Date into subject...
- Attachment Tools: Manage All Attachments in All Mails, Auto Detach, Compress All, Rename All, Save All... Quick Report, Count Selected Mails...
- Powerful Junk Emails by custom; Remove Duplicate Mails and Contacts... Enable you to do smarter, faster and better in Outlook.
You are guest
or post as a guest, but your post won't be published automatically.
- To post as a guest, your comment is unpublished.· 9 days agoVielen, vielen Dank dafür! Hat uns enorm viel Arbeit erspart.Auch ich musste - wie bereits in den Kommentaren geschrieben - die neunte Zeile "Dim xAttachment As Outlook.Attachment On Error Resume Next" entfernen, dann lief der Code einfandfrei durch.
- To post as a guest, your comment is unpublished.· 22 days agoHi, this worked fine for me yesterday but now it is saying 'the macros in this project are disabled'Any advice how to enable them?
- To post as a guest, your comment is unpublished.· 7 months agoon line 9 , removing "On Error Resume Next" worked for me.
- To post as a guest, your comment is unpublished.· 22 days agoThank you
- To post as a guest, your comment is unpublished.· 3 months agoyes this just worked for me as well. Thank you!
- To post as a guest, your comment is unpublished.· 10 months agothe VBA code gives syntax is error
- To post as a guest, your comment is unpublished.· 2 years agoif a pdf has the same name the macro prints just one pdf, how can i change the code in order to modify the pdf name?
- To post as a guest, your comment is unpublished.· 4 years agoif you want to print all attachments together in 1 email here's what you do. first make a folder on your desktop....I named mine "print". go to the email with the attachments....highlight all of the attachments, right click, save all attachments to the print folder. Open the print folder.....highlight all of them.....right click.....print.
now if only I could figure out how to print all the attachments in 200 emails without opening each one and printing it.
- To post as a guest, your comment is unpublished.· 4 years agoKutools for Outlook's Detach All (Attachments) feature can help you download all attachments from multiple emails with several clicks! https://www.extendoffice.com/product/kutools-for-outlook/outlook-detach-attachments.html
- To post as a guest, your comment is unpublished.· 4 years agoAgree with Leah, this does not work. It just prints out the main body of the email and the first attachment, not all of them. Need instructions on how to print them all using "select all" options shown above.
- To post as a guest, your comment is unpublished.· 5 years agoI could figure this part out for myself - what I'm trying to figure out is why, despite doing that, attachments wouldn't print. An error message pops up for each attachment asking if I want to "open" or "save". Choosing either option produces exactly those results - in other words, still no print, just an open or save. I have 20 attachments from 4 emails. I really don't want to have to open 80 documents just to be able to print them. There is clearly some "save me from myself" security setting that needs to be obliterated so that I can use my own computer and the operating system I bought and paid for. THAT'S what I need to know.
- To post as a guest, your comment is unpublished.· 6 months agoDouble click on email to "pop-out" by itself. Right click on one of the attachments and click "select all", then "quick print".
- To post as a guest, your comment is unpublished.· 7 years agoThis is very useful, but doesn't help me with Office 365??