Solved

How to bulk print only the excel 2007 file attachments within an Outlook folder

Posted on 2010-11-16
15
656 Views
Last Modified: 2012-05-10
I am receiving 300 emails a week that each contain an Excel attachment.  The emails are automatically stored in a folder within Outlook through a rule that I already setup.  I need to print only the attachments which are Excel spreadsheets.  I do not want to print the emails themself.  Is there a one-click way to do this or maybe a macro that can be developed that can be excuted within Outlook?  Thank you.
0
Comment
Question by:PJ_KD
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 7
  • 4
  • 2
  • +1
15 Comments
 
LVL 9

Expert Comment

by:vanbarsoun
ID: 34148052
You can purchase Print Manager Plus (http://www.softwareshelf.com/) which will do this automatically. We use it and it's very configurable and reliable.
0
 
LVL 9

Expert Comment

by:vanbarsoun
ID: 34148074
Sorry, ignore my first post. What you want is Automatic Email manager: http://www.namtuk.com/auto_email_manager.aspx

Don't know why Print Manager PLus came to mind....
0
 
LVL 8

Expert Comment

by:rjwesley
ID: 34148090
0
Free learning courses: Active Directory Deep Dive

Get a firm grasp on your IT environment when you learn Active Directory best practices with Veeam! Watch all, or choose any amount, of this three-part webinar series to improve your skills. From the basics to virtualization and backup, we got you covered.

 
LVL 8

Expert Comment

by:rjwesley
ID: 34148140
Do this first though - click to open single attachment (make it Excel) UNCHECK the Always ask before opening this type of file.....

Rob

Then try with 2 or 3 email messages selected with exel attachments
0
 

Author Comment

by:PJ_KD
ID: 34148327
varbarsoun-I don't want to buy a product  or introduce another product to our environment
rjwesley-The solution you proposed prints the email page in addition to the attachment.  I don't want to print the email since I don't need it and don't want to waste the paper.  I couldn't find the UNCHECK that you mentioned in your solution to not ask before opening the file
0
 
LVL 76

Expert Comment

by:David Lee
ID: 34148427
0
 
LVL 8

Assisted Solution

by:rjwesley
rjwesley earned 50 total points
ID: 34148510
You didn't hit just the print button right that won't work, you need to choose File the Print...

After going to File then Print and checking "Print Attached files. Attachments will print to the default printer only" OPTION also instead of having Print ALL selected change that to Page Range - put that as (1-1) - that will print only your first email but will also print all your attachments.

Rob
0
 

Author Comment

by:PJ_KD
ID: 34149333
Rob,
I am using the File | Print.  The print range does eliminate the printing of all of the cover pages with the exception of the first page.  Since each spreadsheet is an .xls file and they are being opened by Excel 2007, there is a prompt after opening each file as to whether to Save it, not save or Cancel for each file opened.  Since there will be 300 at a time, is there some way to suppress the Save prompt?
Kathryn
0
 
LVL 8

Expert Comment

by:rjwesley
ID: 34152722
When you double click an single email message with an xls or xlsx attachment, is there not a prompt as in the link. This should occur when you double click a file attachment to OPEN the file within Excel, not PREVIEW the file within Outlook.

An image like this should pop up (http://www.daleisphere.com/wp-content/uploads/image322.png) - this is where you want to remove the check mark beside "Always ask before opening this type of file....."

Rob
0
 

Author Comment

by:PJ_KD
ID: 34159249
Rob, I had tried that but still got the same prompt while printing the spreadsheets.  I have developed an alternative solution through an Outlook macro with code borrowed from various sources.  It does the same thing as your recommended solution except it continues to print even though there are windows open (one for each spreadsheet) to Update (yes, no, or cancel).  Maybe there is some code trap that can be added to this to bypass the Windows prompt for each printed file.  Here is that code:

Kathryn
Public Sub PrintAttachments()
    Dim Inbox As MAPIFolder
    Dim Item As MailItem
    Dim Atmt As Attachment
    Dim FileName As String
    Dim i As Integer
    Dim xlApp As Excel.Application
    Dim wb As Excel.Workbook

    Set Inbox = GetNamespace("MAPI").GetDefaultFolder(olFolderInbox).Parent.Folders.Item("BiG")

    For Each Item In Inbox.Items
        For Each Atmt In Item.Attachments
            
            FileName = "C:\BiGTemp\" & Atmt.FileName
            Atmt.SaveAsFile FileName
            
            Set xlApp = New Excel.Application
            Set wb = xlApp.Workbooks.Open(FileName, , ReadOnly)
            
            wb.PrintOut
            xlApp.Quit
   
        Next
        
    Next

    Set Inbox = Nothing
End Sub

Open in new window

0
 

Accepted Solution

by:
PJ_KD earned 0 total points
ID: 34176489
I have kept working with this and have developed code that solves my problem so I will close the request.  It is a macro within Outlook that performs the vb code.  I have attached the solution here in case anyone else needs to be able to do this.
Public Sub PrintAttachments()

    Dim Inbox As MAPIFolder
    Dim Item As MailItem
    Dim Atmt As Attachment
    Dim FileName As String
    Dim i As Integer
    Dim xlApp As Excel.Application
    Dim wb As Excel.Workbook
    Set Inbox = GetNamespace("MAPI").GetDefaultFolder(olFolderInbox).Parent.Folders.Item("BiG")
  
    Kill "c:\BiGTemp\*.*"

    For Each Item In Inbox.Items

        For Each Atmt In Item.Attachments
            i = i + 1
            FileName = "C:\BiGTemp\" & i & Atmt.FileName
            Atmt.SaveAsFile FileName
            Set xlApp = New Excel.Application
            Set wb = xlApp.Workbooks.Open(FileName)

            wb.PrintOut
            wb.Save

            xlApp.Quit

        Next
     
    Next

    Set Inbox = Nothing
 
 End Sub

Open in new window

0
 

Author Comment

by:PJ_KD
ID: 34176568
BlueDeveilFan - I just saw that you had submitted a response but had missed it earlier so I did not see your solution until I had developed this one.  I don't know whether your solution would have solved my problem or not.
0
 
LVL 76

Expert Comment

by:David Lee
ID: 34177397
No problem.  
0
 

Author Comment

by:PJ_KD
ID: 34181194
I am fine with closing this.
0
 

Author Closing Comment

by:PJ_KD
ID: 34203746
I have the answer I need now
0

Featured Post

Instantly Create Instructional Tutorials

Contextual Guidance at the moment of need helps your employees adopt to new software or processes instantly. Boost knowledge retention and employee engagement step-by-step with one easy solution.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

When you have clients or friends from around the world, it becomes a challenge to arrange a meeting or effectively manage your time. This is where Outlook's capability to show 2 time zones in one calendar comes in handy.
You need to know the location of the Office templates folder, so that when you create new templates, they are saved to that location, and thus are available for selection when creating new documents.  The steps to find the Templates folder path are …
This Micro Tutorial will demonstrate the scrolling table in Microsoft Excel using the INDEX function.
Finds all prime numbers in a range requested and places them in a public primes() array. I've demostrated a template size of 30 (2 * 3 * 5) but larger templates can be built such 210  (2 * 3 * 5 * 7) or 2310  (2 * 3 * 5 * 7 * 11). The larger templa…

730 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question