10

For some unholy reason I am required by work to print out 10,500 e-mails AND their attachments (which accompany about 70% of the e-mails) through Outlook 2010. I, like you, am appalled at such ridiculous inefficiency and the 55,000 pieces of paper we have estimated this will cost us and the world. Nevertheless, it's going to happen either manually (what we've been doing for the past two days) or automatically (please god help us).

These need to be ordered so that each e-mail sits on top of its respective attachment and is chronologically printed. So email 1, attachment 1, email 2, attachment 2, etc. The attachments can come in Powerpoint, Excel, Word Docs, and most troublesome of all: zip files.

Here's what I have tried so far:

  1. In Outlook "Options" --> "Print Options" --> Select Print with Attachments

  2. Converting all mail into a .eml file and printing from the folder

  3. Using a third party mail add-on (by Sperrysoftware) to convert all e-mails into pdfs and export to a folder. Taking this folder and reordering it by date and printing out the pdfs.

Here's why none of it worked so far:

  1. Outlook's Print with Attachments setting rarely works for documents with macros in them. Above all, it doesn't work with zip files and just passes these over.

  2. Obviously .eml files can't directly be printed or read outside a mail client. I actually think this is still our most promising effort as it is indeed the entire mail file represented in a stable format, separated, and outside a mail client--meaning they are workable. I can't seem to find a third-party software that would effectively let me convert the e-mails AND their respective compressed and variously formatted attachments into printable files. If you know of one, we are also willing to spend in excess of a 200 Euro on software.

  3. This software was promising at first. But the macro breaks frequently and it also recognizes our company's e-mail signatures as attachments.

If you can offer any advice at all this would be of huge help to us. We're currently opening every e-mail, its respective 3 - 4 attachments, and printing them via each attachment's respective printing dialogue. This will take five of us one month, so your input would be highly valued!

bwDraco
  • 46,683

2 Answers2

3

MsgExtract can batch print email messages from different email sources and also convert email formats.

  1. It can batch print the emails and its attachments in chronological order. We have added in the latest build the ability to decompress and print zip attachments as per your requirement.
  2. It can save Outlook email as EML files
  3. It can save Outlook email as PDF files
  4. It can download the images that are linked in the html part of the message and include them in the resulting format (PDF files, printer...)

For printing the attachments MsgExtract relies on the Windows Shell print associations, if no association exists for the attachment file extension it is skipped.

You can learn more about MsgExtract batch printing at:

http://docs.maildev.com/article/122-how-do-i-batch-print-email-messages-and-its-attachments

(Disclaimer, I am the author of MsgExtract)

jponce
  • 619
0

I don't have outlook on this machine and I won't have access to a windows machine with outlook until next week. But basically, you want to do something like this:

Sub test()
Dim oFolder As outlook.folder
Dim oAttachment As outlook.attachment
Dim oMailItem As outlook.mailitem
Dim oItem As Object

set oFolder = 'get the folder you want to print from

Dim i As Integer Dim j As Integer

For i = 1 To oFolder.items.Count Set oMailItem = oFolder.items(i) oMailItem.PrintOut

If oMailItem.attachments.Count > 0 Then
    For j = 1 To oMailItem.Attachments.Count
          'below you might need to change the attachment(j) to items(j)
        Set oAttachment = oMailItem.attachment(j)
        oAttachment.PrintOut
    Next
End If

Next

End Sub

So it goes through the folder looking for emails, prints them and checks them for attachments and if found, prints them as well.

I don't have outlook, like I said, so I can't test this.

Don't go on live data!

If I were you, I'd put like three COPIED emails in a new folder and test this out on them before touching any live data. You may need to lookup how to set oFolder

Raystafarian
  • 21,963
  • 12
  • 64
  • 91