Hui’s Excel Report Printer

Share

Facebook
Twitter
LinkedIn

Over a decade ago I was working on a very large and complex budget model, come to think of it I still am?

It involved 4 linked Excel workbooks, about 30 worksheets, all different, and multiple views of each worksheet.

There were regular Worksheets and Chart Sheets interspersed throughout.

Some of the Ranges had Outlined/Grouped Totals that were indented on some reports, but not on others depending on whom the various reports were going to.

It was a great budget model until you had to print a copy of it.

And of course the different levels of Managers all want different reports etc, etc.

 

The Solution

To solve this I developed a simple VBA routine which has evolved over the years to what is presented here.

The basic idea is to add a Printing Control sheet to your workbook.

This sheet has a list of print views, not Excel views, of various pages within the current workbook.

Each page can be setup as you wish and allows for a number of common parameters for each printed page.

Pages can be listed, multiple times if required, with different ranges or outlining selected each time

The Code handles Worksheets and Chartsheets, Normal and Named Ranges, Page Orientation, Page Size, Page Grouping and Headers/Footers.

As a user you setup the sheets as a list in the order you want them, with appropriate parameters.

The code then:

  • Loops through the list,
  • Obtain the parameters,
  • Sets up the print page and
  • Prints it.

You just need to sit back and wait for the printer to jam.

HOW DO I USE IT

Download the sample file here Excel 97-03, Excel 2007/10

You can use the sample file as is, for demo purposes or read on later where I describe how to use this in your workbooks.

Open the workbook and Goto the “Print_Control” worksheet.

Browse through the various Headings in Row 4 and field values below them.

Note that some of the Row 4 cells have comments in which explain what options are available.

Each field is described below:

No.

The Row No. in the list of page layouts available.

This has no use except when someone says the 5th page should be…

Description/Header

A text field that is used as a Reminder of the layout of the Page Setup also serves as a Centred Header.

Status

Print = On

Don’t Print = Off

The code only prints the pages marked as On.

Sheet

The name of the Worksheet or Chartsheet you want to print

Area

The Range on the Sheet that you want printed

Ignored for Chartsheets.

Land/Port

Specify if the page should be printed Landscape or Portrait

Ignored for Chartsheets.

Chartsheets are printed in Landscape.

Pages Wide

How many pages wide should the Range be printed on

This is fixed at 1 for Chartsheets.

Pages Tall

How many pages tall should the Range be printed out on

This is fixed at 1 for Chartsheets.

Copies

How Many Copies do you want of that individual page.

Rows & Columns

If outline/grouping is used specify what level of Indentation should be used for the Rows and Columns.

0 – Leave as is

1 – Indent 1 level

8  – Indent 8 levels

The maximum indentation is 8

Ignored for Chartsheets.

Footer (Left)

A description field printed as lower left footer.

No. of Copies

This specifies the Number of Copies of the Whole Report you want

Print All “On” Areas

The Print All “On” Areas Button executes the code and prints out a number of copies of the report as specified in the various page setups.

The printing is done on the default printer on your PC,

Important: Ensure that the printer you want to use for the job is set as the default before you start Excel.

You can print to a PDF file by specifying your Adobe or other PDF Printer as the Default Printer.

I’m sorry, This doesn’t fix the printing multiple pages to multiple files when printing to PDF issue.

 

Warning ! I maybe old school but I still recommend saving before printing !

 

HELP

There is limited help built into the system, That’s what this Post is doing.

Some of the field headings have comments which show what values are acceptable in those fields.

HOW DO I ADD THIS TO MY WORKBOOK ?

To add this to your workbook, copy the Print_Control worksheet to your workbook

  1. Open your workbook.
  2. Open the Demo File
  3. Copy the Print_Control worksheet by Right Clicking on the Print_Control tab, and copy to your workbook.
  4. Run the VBA Code using the “Setup Print Control Named Formula” Button

That’s it.

All the code required for the printing is part of the Print_Control page.

 

HOW DOES THE VBA WORK ?

The following describes the VBA Code driving this worksheet.

To examine this goto VBA (Alt F11)

Select the workbook and double click on Sheet0 (Print_Control)

The code should appear in the right hand window

If you are unfamiliar with VBA it may be worth going through Chandoo’s Crash Course in VBA

There are 2 Subroutines and a Function in this system which are documented below

 

Print_Reports

This is the main subroutine that drives the printing

It is called by the Print All On Button and when finished returns the user to the Print_Control worksheet.

All the VBA code is in RED,

Comments and notes are in BLACK before the line or section they refer to.

= = = = = = = = = = = = = = = = = = =

At the start of the Print_Reports subroutine, setup variables for later use

Option Explicit

Public Sub Print_Reports()

Dim PrintArea As Variant

Dim i As Integer

Dim j As Integer

Dim sht As Long

Dim Orientation As String

Dim NCopies As Integer

Dim PWide As Integer

Dim PTall As Integer

Dim Footer As String

Dim Header As String

Dim Sheets As String

Dim gRow As Integer

Dim gCol As Integer

Dim PaperSize As String

Dim msg As String

Dim tmp As String

Turn off the Automatic Calculation so that it is faster and isn’t as jerky

Application.Calculation = xlCalculationManual

This loads the entire array of the Print_Control page into an array called PrintArea

PrintArea = Worksheets(“Print_Control”).Range(“Print_Control”).Value

This sets up a loop for the No of Total Copies of the Whole report

For j = 1 To [Copies].Value ‘Loop through the No of Copies

This sets up a loop for the to check each line of the Print Control area

For i = 1 To UBound(PrintArea, 1) ‘Loop through the print area

If the Column Status is On print using that line of settings

If UCase(PrintArea(i, 3)) = “ON” Then ‘When On is enabled Print using the settings

Extract the settings from the stored array, row i

Header = PrintArea(i, 2) ‘Set Header variable

Orientation = PrintArea(i, 6) ‘Set Orientation variable

PWide = PrintArea(i, 8 ) ‘Set Pages Wide variable

PTall = PrintArea(i, 9) ‘Set Pages Tall variable

NCopies = PrintArea(i, 10) ‘Set No Copies variable

gRow = PrintArea(i, 11) ‘Set Row Group Expansion

gCol = PrintArea(i, 12) ‘Set Column Group Expansion

Footer = PrintArea(i, 13) ‘Set Footer variable

Check paper sizes against the built in page sizes

If PrintArea(i, 7) = “A4” Then

PaperSize = 9

ElseIf PrintArea(i, 7) = “A3” Then

PaperSize = 8

ElseIf PrintArea(i, 7) = “A5” Then

PaperSize = 11

ElseIf PrintArea(i, 7) = “Legal” Then

PaperSize = 5

ElseIf PrintArea(i, 7) = “Letter” Then

PaperSize = 1

ElseIf PrintArea(i, 7) = “Quarto” Then

PaperSize = 15

ElseIf PrintArea(i, 7) = “Executive” Then

PaperSize = 7

ElseIf PrintArea(i, 7) = “B4” Then

PaperSize = 12

ElseIf PrintArea(i, 7) = “B5” Then

PaperSize = 13

ElseIf PrintArea(i, 7) = “10×14” Then

PaperSize = 16

ElseIf PrintArea(i, 7) = “11×17” Then

PaperSize = 17

ElseIf PrintArea(i, 7) = “Csheet” Then

PaperSize = 24

ElseIf PrintArea(i, 7) = “Dsheet” Then

PaperSize = 25

Else

PaperSize = 9 ‘Defaults to A4

End If

Activate the relevant sheet

This checks that the sheet exists first

tmp = PrintArea(i, 4)

SheetExists(tmp) is a UDF that’s checks if the sheet exists and returns True or False

If Not SheetExists(tmp) Then

msg = “Sheet ‘” + PrintArea(i, 4) + “‘ not found.” + vbCrLf + “Check the sheets Name.”

msg = msg + vbCrLf + vbCrLf + “Processing will continue for remaining sheets.”

tmp = MsgBox(msg, vbExclamation, “Sheet not Found”)

Else

The sheet exists now process

Select the sheet

Application.Sheets(PrintArea(i, 4)).Select

Check if it is a Worksheet or a Chartsheet

If ActiveSheet.Type = -4167 Then ‘Its a worksheet

Turn off screen updating

Application.ScreenUpdating = False

Select the relevnt area of the sheet

ActiveSheet.PageSetup.PrintArea = PrintArea(i, 5) ‘Select the relevent Print Area of the Sheet

Set Outline levels

ActiveSheet.Outline.ShowLevels RowLevels:=gRow, ColumnLevels:=gCol ‘Set Outline Grouping

Apply print settings

With ActiveSheet.PageSetup ‘Set print settings

.PrintTitleRows = “”

.PrintTitleColumns = “”

.LeftHeader = “”

.CenterHeader = Header ‘User Defined Header (Shift to Left or Right as required)

.RightHeader = “”

.LeftFooter = Footer ‘User Defined Footer (Shift to Left or Right as required)

.CenterFooter = “”

.RightFooter = “”

.LeftMargin = Application.InchesToPoints(0.1)

.RightMargin = Application.InchesToPoints(0.1)

.TopMargin = Application.InchesToPoints(1.0)

.BottomMargin = Application.InchesToPoints(0.4)

.HeaderMargin = Application.InchesToPoints(0.1)

.FooterMargin = Application.InchesToPoints(0.3)

.PrintHeadings = False

.PrintGridlines = False

.PrintComments = xlPrintNoComments

.CenterHorizontally = False

.CenterVertically = False

.Draft = False

.PaperSize = PaperSize ‘ User Defined Paper Size

.FirstPageNumber = xlAutomatic

.Order = xlDownThenOver

.BlackAndWhite = False

.Zoom = False

.FitToPagesWide = PWide ‘User Defined No Pages Wide

.FitToPagesTall = PTall ‘User Defined No Pages Tall

.PrintErrors = xlPrintErrorsDisplayed

End With

Apply page orientation settings

If Orientation = “L” Then ‘User Defined Page Orientation

ActiveSheet.PageSetup.Orientation = xlLandscape

Else

ActiveSheet.PageSetup.Orientation = xlPortrait

End If

Turn Screen updating back on

Application.ScreenUpdating = True

Finished setting up Worksheet goto the Printing area

Else ‘Its a Chart page

Turn Screen updating off

Application.ScreenUpdating = False

Apply print settings

With ActiveChart.PageSetup

.LeftHeader = “”

.CenterHeader = Header

.RightHeader = “”

.LeftFooter = Footer

.CenterFooter = “”

.RightFooter = “”

.LeftMargin = Application.InchesToPoints(0.1)

.RightMargin = Application.InchesToPoints(0.1)

.TopMargin = Application.InchesToPoints(1#)

.BottomMargin = Application.InchesToPoints(0.4)

.HeaderMargin = Application.InchesToPoints(0.1)

.FooterMargin = Application.InchesToPoints(0.3)

.ChartSize = xlScreenSize

.PrintQuality = 600Change to 300 for Excel 97-03

.CenterHorizontally = True

.CenterVertically = True

.Orientation = xlLandscape

.Draft = False

.OddAndEvenPagesHeaderFooter = False ‘Removed from 97/03 Ver

.DifferentFirstPageHeaderFooter = False ‘Removed from 97/03 Ver

.EvenPage.LeftHeader.Text = “” ‘Removed from 97/03 Ver

.EvenPage.CenterHeader.Text = “” ‘Removed from 97/03 Ver

.EvenPage.RightHeader.Text = “” ‘Removed from 97/03 Ver

.EvenPage.LeftFooter.Text = “” ‘Removed from 97/03 Ver

.EvenPage.CenterFooter.Text = “” ‘Removed from 97/03 Ver

.EvenPage.RightFooter.Text = “” ‘Removed from 97/03 Ver

.FirstPage.LeftHeader.Text = “” ‘Removed from 97/03 Ver

.FirstPage.CenterHeader.Text = “” ‘Removed from 97/03 Ver

.FirstPage.RightHeader.Text = “” ‘Removed from 97/03 Ver

.FirstPage.LeftFooter.Text = “” ‘Removed from 97/03 Ver

.FirstPage.CenterFooter.Text = “” ‘Removed from 97/03 Ver

.FirstPage.RightFooter.Text = “” ‘Removed from 97/03 Ver

.PaperSize = PaperSize

.FirstPageNumber = xlAutomatic

.BlackAndWhite = False

.Zoom = 100

End With

Turn Screen Updating back on

Application.ScreenUpdating = True

End If

Now Print the active sheet using user defined No. Copies

ActiveWindow.SelectedSheets.PrintOut Copies:=NCopies, Collate:=True

End If

End If

Next i

Next j

Clear PrintArea array, just in case

PrintArea = Null

Turn Auto Calculation back on

Application.Calculation = xlCalculationAutomatic

Go back to the Print Control sheet

Application.Sheets(“Print_Control”).Select

End Sub

= = = = = = = = = = = = = = = = = = =

The SheetExists Function

This is a Function that is used by the Print_Reports subroutine to check if a sheet exists.

= = = = = = = = = = = = = = = = = = =

Function SheetExists(SheetName As String) As Boolean

‘ This function Returns TRUE if the sheet exists in the active workbook

SheetExists = False ‘Set default value of SheetExists

On Error GoTo NoSuchSheet ‘Set error trapping such that if the sheet doesn’t exist it will exit

Check length of sheet name, if the sheet exists it will return a value, otherwise an error

If Len(Sheets(SheetName).Name) > 0 Then

The sheet exists so set SheetExists = True and exit

SheetExists = True

Exit Function

End If

NoSuchSheet:

The sheet doesn’t exists so use default SheetExists = False and exit

End Function

= = = = = = = = = = = = = = = = = = =

The Setup_Print_Control_Named_Formula Subroutine

This is a simple subroutine that sets up the 2 named formula for use the first time a sheet is used.

= = = = = = = = = = = = = = = = = = =

Sub Setup_Print_Control_Named_Formula()

Setup Named Formula “Print_Control” which is the table of settings

ActiveWorkbook.Names.Add Name:=”Print_Control”, RefersToR1C1:= _

“=OFFSET(Print_Control!R4C2,1,,COUNTA(Print_Control!R5C2:R24C2),COUNTA(Print_Control!R4))”

ActiveWorkbook.Names(“Print_Control”).Comment = _

“Used by the Print_Reports Subroutine”

Setup Named Formula “Copies” which is the No of Copies of the Whole Report

ActiveWorkbook.Names.Add Name:=”Copies”, RefersToR1C1:= _

“=Print_Control!R26C13”

ActiveWorkbook.Names(“Copies”).Comment = “Specifies the No. of Copies for the Print_Reports Subroutine”

End Sub

= = = = = = = = = = = = = = = = = = =

NAMED FORMULA

The code relies on two Named Formulas

Copies:

=Print_Control!$L$27

Print_Control:

=OFFSET(Print_Control!$B$4,1,,COUNTA(Print_Control!$B$5:$B$24),COUNTA(Print_Control!$4:$4))

Automatically adjusts the Print_Control Named Formula for the number of Page Setup lines and Fields to be processed

If you have queries about how any of the above code works, please let me know in the comments below:

 

WHAT DOES THE ARRAY “PrintArea” DO ?

The print area array stores the values of the Print_Control range in a 2 dimensional array which represents the Print_Control range.

This is done for a few reasons, but simply it is faster as it results in less reading of the worksheet

It also allows more flexibility in the subsequent processing as all the data is in one area.

 

DOWNLOADS

Download the sample file here Excel 97-03, Excel 2007/10

 

WHAT’S NEXT

There are a number of parameters used in the Print Setup area which are not used or not used in the 97/03 version.

The code above is easily extended to include these if you desire.

One day when I have a spare moment (Most likely in 2025!) I will add the option for automatic incremental Page Numbers.

 

CLOSING

This code has saved, my staff and I, hundreds and hundreds of hours over the past decade whilst printing complex Excel workbooks.

This functionality was also one of the more requested issues from our poll of 3 months ago We Want Your Ideas!

I hope you enjoy it as much as I have ?

 

Updates

I will be extending the functionality of this in the future and so if you have any suggestions, lets hear them in the comments below:

 

How have you tackled large print jobs ?

I look forward to your comments below:

 

Hui…

For a list of my other contributions at Chandoo.org please visit; Hui.

Facebook
Twitter
LinkedIn

Share this tip with your colleagues

Excel and Power BI tips - Chandoo.org Newsletter

Get FREE Excel + Power BI Tips

Simple, fun and useful emails, once per week.

Learn & be awesome.

Welcome to Chandoo.org

Thank you so much for visiting. My aim is to make you awesome in Excel & Power BI. I do this by sharing videos, tips, examples and downloads on this website. There are more than 1,000 pages with all things Excel, Power BI, Dashboards & VBA here. Go ahead and spend few minutes to be AWESOME.

Read my storyFREE Excel tips book

Overall I learned a lot and I thought you did a great job of explaining how to do things. This will definitely elevate my reporting in the future.
Rebekah S
Reporting Analyst
Excel formula list - 100+ examples and howto guide for you

From simple to complex, there is a formula for every occasion. Check out the list now.

Calendars, invoices, trackers and much more. All free, fun and fantastic.

Advanced Pivot Table tricks

Power Query, Data model, DAX, Filters, Slicers, Conditional formats and beautiful charts. It's all here.

Still on fence about Power BI? In this getting started guide, learn what is Power BI, how to get it and how to create your first report from scratch.

66 Responses to “Excel 2007 Review – 10 things that WOWed me”

  1. Hey, better late than never!

    It's very easy to trash Excel 2007, but it definitely has a few good things going for it. Consider it the beta for for Excel 2009 (or whatever it's called). Hopefully, the major problems will be fixed and other usability tweaks will be incorporated. I don't expect too many major new features.

    Use it exclusively for 4-5 months, and Excel 2003 will seem like an ugly old dinosaur. At least that's how it went for me.

  2. Jon Peltier says:

    To paraphrase John's esteemed opinion, it's very easy to be distracted by the updated visual appearance of Excel 2007. And I will not deny that Excel 2007 does have some good features going for it. However, the drawbacks far outweigh any of these improvements. I have really tried very hard to like Excel 2007, starting in 2005 in the late alpha testing stages, and I can say that experienced hard-core users will find themselves less productive in Excel 2007, even after they know where their favorite commands have been moved to.
     
    The ribbon puts many commands out of sight on the inactive tabs. In all honesty it seems like the new charting machine was never completed. The dialogs which have been redesigned, particularly the chart and shape formatting ones, cannot be used as efficiently as the old dialogs. Moving some options from chart formatting dialogs to charting contextual tabs makes them harder to find and harder to use. If you have any charts with more than a few thousand points, which is not a large total by any means, and Excel bogs down whenever it decides to refresh the charts.
     
    I've blogged about several aspects of Excel 2007:
    A Belated Review of Excel 2007
    Changes to Charting in Excel 2007
    What happened to my favorite Excel 2003 Chart feature?
    Excel 2007 Chart Performance - Revisited
    Error Bars in Excel 2007

  3. Rich says:

    Wow, Excel '07 looks much better than I thought it would. For some reason I had this picture in my head of it being this ugly monstrosity. Now if only my company would upgrade. We just went from 2000 to 2003 about a year ago, so I doubt it's going to happen soon . . . .

  4. ketan says:

    @ Chandoo :
    Cud u pls inform the merits and demerits of "OpenOffice.org Calc" w.r.t. excel.

  5. Chandoo says:

    @John: That is what I am planning to do. Thanks.

    @Jon: Thanks for the pointers. As I mentioned this post is first look review only and I might as well discover some problems with Excel 2007 ( I am hoping not though 😀 )

    @Rich: It is a surprise for me too, but the overall feel of excel 2007 is far better than expected. Try it sometime and find your reasons to like / test it.

    @Ketan: sure, I have already installed Open Office Calc and been thinking about a review for a while. Will do it in the next few weeks.

  6. Rene Tenazas says:

    I also liked the charting features of 2007, initially. But, I have to work with others who have earlier versions of Excel. There is a huge problem in compatibility: a chart drawn in 2007 will not display fully in earlier versions: the left or right edges of the chart will be partly cropped, making them unreadable. They have to recreate the chart with their older versions.

    There is also a danger that if you install 2007 on top of 2003 or earlier versions, your Windows installation will be corrupted, and you will never be able to access your older Excel version with OLE ever again (I have had to reformat one of my Windows machines to get rid of 2007). My experience has been that Office 2007 is one of the nastiest viruses out there: once you install it, all registry references to other versions of Office are eliminated, and you will not be able to regain full use of your older Office versions, even if you uninstall 2007 and reinstall the older Office version.

    I hope you have better luck than I did with the 2007 install, especially if you use OLE. If you can get the 2 versions to co-exist, write about how you did it.

  7. Jorge Camoes says:

    Chandoo, Excel 2007 is a dumb blonde. You saw the blonde, now prepare for the dumb.

  8. Jon Peltier says:

    Rene -
     
    I have heard from many users who have installed multiple versions of Office on their computers with no problems (including one person with Excel 95, 97, 2000, 2002, 2003, and 2007). The trick they say is to install in order from the oldest to the newest, in different directories (e.g., C:\Program Files\Microsoft Office 97, \Microsoft Office 2000, etc.).
     
    Perhaps it's my own usage patterns, but I have in fact had issues with multiple versions. I suspect some of the problems arise from the shared resources, especially for me the user defined chart gallery. Another source of problems which I think relates to your issue of 2007 settings persisting past uninstallation, is registry settings. I also don't think you can reliably control which version of Office is summoned for OLE interactions, just as you can't relaibly control which version is opened when you launch a file from Explorer.
     
    Lately I'm seeing some issues with userforms on computers with fresh installs of 2007 and with Excel 2003 freshly updated to SP3. It is a sporadic problem, most people don't experience it, some who do can be relieved with simple remedies, and some defy all countermeasures. Unfortunately the error message is "Unspecified Error" (no joke!) and searching Google brings up earlier unrelated instances of this error.

  9. Chandoo says:

    @Rene: I came across the chart compatibility issues as we have partially migrated to excel 2007 in office and most of us are running that compatibility mode to avoid surprises.

    Thanks for the warning on co-existence of 2003 and 2007. I will write another post if the installation is successful.

    @Jorge: 😀

    @Jon: thanks for explaining this and few other glitches. I will probably do more research before installing 2007 on top of 2003 as any disruption to 2003 would be very bad for me.

  10. sam says:

    "It would have been excellent if MS had provided an option to switch to classic menu navigation."
    Chandoo- They Have.... You just have to turn it ON 🙂 ....and we should be thankful that they are allowing us to customize the Ribbon to display the Classic UI...

    http://i41.tinypic.com/20jk01t.jpg

  11. After reading several reviews of version 2007. I am still waiting to upgrade, my priority is productivity.
    Of course there are things in the 2003 that needed improvement, but
    I will consider the upgrade when I can customize the UI and when some of the 2003 lost features are added to the new Excel version.

  12. Stružák says:

    @Gabriela Cerra: I agree. Sometimes I use Excel 2007 on my father's PC for 4 months and still I can't get used to it.

    The only thing I really appreciate is "3. Status bar now shows average and count as well" mentioned by Chandoo. I really miss this feature in Excel 2003, which I use most of the time. :'-(

    I'm not sure, if "most of the dialogs are same". I find them too big and work with them is less effective.

  13. Spashi says:

    Even though the conditional formatting is pretty now, it is buggy too. I rely heavily on conditional formatting, and I dislike the globalness of it in 2007. If I just want to remove formatting on a specific area, it is confusing to do so, and sometimes it applies the conditions to cells that I did not intend. The relative references get messy as well (if you want the cells in column B to change color if they match their corresponding cell in column A, and then add then you add data and apply it to more rows, you end up with too many "Applies to" references after a while, hard to clean up).

  14. Chandoo says:

    @Sam: Thank you. I am aware of a VBA based tweak for this (http://blog.livedoor.jp/andrewe/archives/50820196.html) but I dont know if there is a straight forward way to enable old style menus in 2007. Do you know any easy way to do this ? please ... please tell me 🙂

    @Gabriela: I am not sure how much MS would allow users to roll back classic UI, because I heard they have added ribbon UI to MS paint and wordpad (the free stuff that comes with windows) in their latest beta version of windows.

    @Struzak: "I find them too big and work with them is less effective.", you are right, the dialogs are unusually large. May be MS is hoping to add few more additional features in the coming versions and getting us ready for bigger dialogs.

    @Spashi: That is some what disturbing to know. Even I use Cond. formatting alot.
    Let me do some more research on this so that I wont accidentally add conditional formatting in a wrong way and send the file to a customer.

  15. Jon Peltier says:

    The tweaks that allow us to emulate the classic menus in the ribbon are not very elegant. In fact, the ribbon is pretty easy to control, once you get over the initial fear of the unknown. It's way easier to customize using XML than it is to use within the user interface.
     
    I would expect MS to be strongly reluctant to roll back to an earlier interface (menus and toolbars), despite their effectiveness and the strong backlash against the ribbon. They went through months of blogging and explaining, justifying how they used incomplete automated user feedback and faulty logic to develop the new system. Apparently we users are too stupid to be trusted with something as flexible and customizable as the toolbars and menus, and we will be happier and more productive with a system that's much less flexible and almost completely uncustomizable. Um, or at least that's what we were told.
     
    The large new dialogs for the charts (for example) seem to have loads of empty space which could be put to more effective use. To format lines and markers for a chart series in Excel 2003, I need visit only a single tab of a dialog, whereas in Excel 2007, I must visit up to six tabs. If I need something special from one of these tabs, like 3D effect or something equally gaudy, the options appear right on the same tab. The equivalent in 2003 would be shown on a child dialog, and only when the user had called it. But in 2007 they shun child dialogs, except where they make life less efficient: how else to explain the need to pop up a dialog to select data ranges for chart series, custom error bars, etc.? These worked rather nicely on the same tab in 2003.
     
    Looks like I'm ranting. Again. But these are the things that have caused me to feel trapped in an inefficient user environment in 2007. The feeling of constraint makes it impossible to enjoy the real improvements that were made.

  16. I don't expect to roll back the classic UI, only some EASY customization, few lost things like a floating toolbar and not to do 6 clicks instead of one.

  17. Chandoo says:

    @Jon: "to format lines and markers for a chart series in Excel 2003, I need visit only a single tab of a dialog, whereas in Excel 2007, I must visit up to six tabs." I totally agree with you, I couldnt understand the rationale behind this either. They have separated things in to multiple tabs when they were working excellent in one place.

  18. Jon Peltier says:

    Chandoo:

    I have suspected (without any real information) that the designers and programmers of the new charting user interface did not actually use this interface in daily battle. I only make small utilities, admitteedly, nothing as massive as part of an Excel-size application, but they are easy to use because I designed them so I could do things more easily.

  19. sam says:

    NO VBA - JUST XML -

    1st Hide all built in Tabs except the Addins Tab
    2 Create a New Tab called - Menus

    On this you can put one rows of menus + 2 Rows of buttons... the ribbon just allows for 3 - another stupid limitation

    sam

  20. Ramesh kumar says:

    sir i requested that Please sent me excel formula.
    thank you.
    your respectfully Ramesh Kumar tripathi .from opk eservices.

  21. Stephanie says:

    Hi there,
    I am trying to figure out if there is a way to get other color schemes for Office 2007. I know there are Black, Blue and Silver included in the pack, but there must be a way to edit them. My boss is having difficulty in seeing the difference between active tabs and inactive tabs in the Blue theme, and the Black and Silver are not really much better. Any ideas??
    Thanks

  22. [...] In earlier versions of Excel you can only define max. of 3 conditions. This is no longer true if you are using Excel 2007 (read our review of excel 2007) [...]

  23. Barry says:

    When opening an Excel 2007 file in 2003, the colors change, even if I save it in 2003 format, and even if I use the same RGB colors in 2007 as I use in 2003. How can I keep the same colors when opening in different versions?

  24. Barry says:

    When opening an Excel 2007 file in 2003, the colors of filled cells change, even if I save it in 2003 format. How can I keep the same colors when opening files in different versions?

  25. Jon Peltier says:

    Barry -

    I think the only reliable way to do this is to use white and black, and maybe primary colors. There is minimal compatibility between color models between Classic and New Excel.

  26. Jon Peltier says:

    Stephanie -

    These are the only schemes available, and I don't think they can be modified. Microsoft seems not to allow for 40+ year old eyes in their interfaces. There is a Windows option for enhanced contrast, I think buried in the display settings, but it makes everything else stark and ugly.

  27. John Gendron says:

    I don't mind the 2007 ribbon except for two reasons:
    - I have certain tools I use and when I consistantly use a function, I want it available on a customizable bar.
    - Tools I never or rarely use, I take off the bar.
    It's that simple. I've gone back to Excel 2003 and have started using Open Office as well. The future for Excel, on the current path is dismal for the experienced user, IMO.

  28. Squiggler 47 says:

    I hated the new ribbon when I first saw it on beta versions in 2006, after using 2007 for the last 2 1/2 years It grows on me, while some options I cant find, overall I find it faster to use.

    The new tables and improved pivot tables have saved me hours of work!

    Perhaps microsoft has spent some of the time on office 2010 in speeding it up!

    And if you would like my 2cents on a feature for the next version!

    The ability to define a repeated part of a formula IE

    =if(sum(range)>0,sum(range),0 (simple example but sometimes the parts can be big)

    it would be nice to do

    =define(Form1,"sum(range)") IF(form1,Form1,0)

    or similar to cut down on repetition!

  29. Zamir says:

    I totally agree with Jon Peltier. I love Excel 2003 and hate 2007. All my work has been affected by installing 2007. Most good reviews regarding excel 2007 are about its looks but productivity has been definetly affected. I regret upgrading from 2003.

  30. John Franco says:

    User interface is just one of productivity to consider. What about after the weeks you took to re-learn the new look-and-feel?

    Microsoft Excel 2007 is a major rewrite so it is justified to wait a lot from it.

    It really brings great benefits, to name just a few:

    1. Forget inserting a column/row to exclude adjacent data in Autofilter with new Excel Table
    2. Filter discrete items. Use check boxes to select or deselect items
    3. Don’t guess anymore when picking arguments (blocked cells or unknown cells because a blocked column header due to a flooding formula bar). Formula bar content is automatically wrapped
    4. Delete multiple names at once
    5. Dual-processors and multithreaded chipsets to perform faster calculations in large, formula-intensive spreadsheets
    6. Focus on data analysis as you add data. Excel Table AutoExpansion
    7. Delete duplicates intuitively and by field
    8. Better charting and Pivot Table experience
    9. And more...

    Read this article about what makes Excel 2007 better than Excel 2003: http://www.excel-spreadsheet-authors.com/excel-2007.html

  31. Jon Peltier says:

    John -

    Your points 1 and 6 re Tables in 2007 were true of Lists in 2003. Lists already had much of the capabilities of Tables, but they were a well kept secret. Lists were the killer feature which got me to upgrade from 2000 to 2003.

    Half of your point 8 is false. The charting experience has been mostly much less pleasant. The default formatting is less ugly (note I didn't say "not ugly"), and the process of formatting a chart has become tedious and obscure.

    The items you mention which are new have not been sufficient to entice me to upgrade for my own work. I will have to admit that 2007 has given me a lot of conversion work, but much of this work has been unpleasant, both for me and for the clients who had to relearn how to use Excel.

  32. [...] Excel 2007 Review – 10 things better and cooler in excel 2007 Excel 2007 Productivity Tips & Tricks Excel Pivot Tables – Tutorial & Tricks Excel Conditional Formatting – 5 Must Know Tricks [...]

  33. Durga says:

    One more point for Excel 2007 worth mention is the no. of rows;
    from 65536 to 1048576. Phew! That's great!

  34. [...] Personally I think ribbon is a good way to explore an application. I have gotten used to it since I tested excel 2007 for first time. Now, during the rare occasions I work on excel 2003, I feel strange navigating [...]

  35. DrGorgeous says:

    "One more point for Excel 2007 worth mention is the no. of rows;
    from 65536 to 1048576. Phew! That’s great!"

    Hah, wow.. how did it take soo long for this comment to appear, IMO this IS the reason to get Excel 2007.

  36. Aaron says:

    I have been using 2007 for a couple months now and I am absolutey disgusted by it. Clearly Microsoft wanted to create a program that was beautiful for novice users, however, as someone who knew Excel inside out I find the new appearance and layout to be very inefficient. The way we describe it around our office is 2003 was the girl you wanted to marry, 2007 is a one night stand.

  37. Jon Peltier says:

    "2003 was the girl you wanted to marry, 2007 is a one night stand"

    I think 2007 is what Rodney Dangerfield had in mind when he coined the phrase "two-bagger".

    • Chandoo says:

      From google:

      Two-bagger: An extremely unattractive person (usually female), the insinuation being that one bag covering her face would not be adequate. Within this joke, the second bag is often understood to cover the male's head in case the female's bag were to fall off

      Jon.. are you sure you have a bag on? 😛

      On a more serious note, I found Excel 2007 pretty ok. Infact I have been using it since new year 2009 and so far I havent had any major complaints about it. It is different w/ people like Jon who make commercial tools based out of excel as several things have changed in 2007.

  38. berferd says:

    I am a power user of Excel and have been trying for a year to make XL2007 work as effectively as 2003. Definitely the million rows, the PDF add-on, and expanded chart types help. But the problems for serious users like me are major.
    - I get frequent warnings that "data may have been lost or corrrupted."
    - Almost every workbook has "minor loss of fidelity."
    - Date records in columns that are used as chart X axes get replaced with a weird string.
    - Many keyboard shortcuts like Alt E A (Edit Select All) do not work or involve an extra step. Worse, here Excel pretends to recognize what you want but does not do it.
    - Some VBA macros would not work until I declared all variable types.
    - XL'07 reports "invalid names" were changed to "#REF!" but then I could not find any such.
    - Prompt for passwords suddenly stops appearing; workbook just opens.
    - PDF writer within Excel (via MS Add-In) worked fine at first then started to produce mostly gibberish; now useless.
    - As some mentioned above, the tooolbars are much less flexible and useful than before (I am surprised the backlash has not been more severe on this); that is a major step backward.
    - One critical workboook suddely started to take five times longer to save. Can't tell why.
    - Print Preview button stopped working altogether.
    I have nothing agains change. But this has been a real productivity killer. Takes an hour sometimes to do what used to take minutes. Again, I am surprised more people are not up in arms at the changes.

  39. Hui... says:

    Fear not Berferd
    A lot of the issues you discussed have been addressed in 2010
    But I still agree with your opening line that 2007 and even 2010 is not as effective as 2003

  40. John says:

    My old Laptop and I have been using another office laptop with XL 2007. What a disaster this software is - sure there is a learning curve with new things - but as many observe even after you figure out by trial and error where the functions are hidden, it takes more clicks to get to the function you need than the old version - How about a classic toobar option - why should everyone's productivity crash so that Microsoft can roll out software that benefits only themselves with new sales and a comparatively small number of users.

  41. squiggler says:

    As a long time user of Excel (since version 2) I first tried 2007 as a CTP version at first I thought the ribbon was designed for new users and was an annoyance. After daily use of it for the last 3+years I wouldnt go back (I had to use Excel2002 recently for 6 months).

    2010 which I am using on my laptop now has resolved some of the niggles I had, now I can edit the ribbon quickly and create tabs which suit me! The only complaint I have about excel is the fact that Visual Basic is not improving, it would be nice to work in VBA in a more visual studio like environment (yes i know about VSTO)!

  42. Chandoo says:

    @John... Most of the experienced xl 2003 users have similar comments. I think MS is addressing a few with xl 2010. But Ribbon seems to take a firm position in future plans of MS Office so you might as well get on with it and try to benefit from the implementation...

    @Squiggler... I have been using xl 2007 at work and home for last year and half and I must say I love the UI now. For some customer projects I use xl 2003 and it does feel a bit difficult now to search in excel 2003 menus...

  43. Chris says:

    Even allowing for the novelty factor I find that the increase in key strokes & the inability to have favourite tools annoying.

    I frequently get “minor loss of fidelity” messages.

    Tabs do not always copy.

    Sometimes when one presses Shift+2 instead of getting " which you need for =text(D4,"0000") you get @ =text(D4,@0000@) . The only solution to the later being to save the file. close it, close Excel, close machine 7 reboot. It is simpler to go back to Excel 2003.

    It is true 2003 was the girl you wanted to marry & 2007 was the dumb bleached blonde, who makes one want to say "Just going to the bar/loo" & then make a run for it.

    I'm hoping 2010 will get back alot of the customisation but I'm fearful the people who give it good reviews gave 2007 good reviews too.

    Hey ho, not all change is progress

  44. Jeff Evans says:

    I am firmly in the favoring Excel 2003 camp. Agree with the comments that talk about how the changes are visual, but productivity is actually impaired. Also found what seems to be a 2003/2007 compatibility issue. I have a spreadsheet created in 2003. Normally it has the "freeze panes" active. When I bring it into 2007 (compatibility mode & converted both). I can't unfreeze the panes. When I went back to unfreeze panes in 2003 then bring it back, I couldn't freeze the panes.

    Go figure.

  45. Exasperated says:

    I've been using 2007 for 6 months now and it is disgusting how awful it is - even the Help section is an ineffective mess. Everytime I need to do anything slightly signficant, I have to google for Help and troll various websites. It's two steps forward - about ten steps backwards. My productivity with the application is down about 50%.

  46. Manjunatha says:

    Advantage of Columns - 16,384 and Rows - 1,048,576 raised from 256-C, 65536-R.
    Worth for large range user.

  47. M.Farukh Aheer says:

    excel2007 good for use but when i seek this new version come it s boundries are large

  48. Prateek says:

    Is password protecting a document (or spreadsheet) more secure in 2007 than 2003? Or is it the same?

    I have a couple of excel files that I password protect. The files are in compatibility mode (2003 format). Since the data in those files is very critical I want to be absolutely sure if it is safe to be kept in there. Else I will start hunting for a more suitable way to hold sensitive data.

    Awaiting your thoughts. Thanks.

  49. Hui... says:

    Password protection was one area improved upon in Excel 2007
    I'm note sure about when your working in compatibility mode though

    If you want to be secure, definitely change to Excel 2007 file formats

  50. Mike says:

    I agree with all the comments about productivity. I use a lot of shortcuts in 2003 version and even though I know most of them by memory, once in while I need to refresh my memory and look into the menus for they right keys. Since 2007/2010 don’t have the same menu, now it is impossible for me to know a short-cut if I don’t remember the exact keys or I need to learn the new keys which they are longer paths.
    In addition pivot tables /filters I used shortcuts to make selections in 2003, can’t do that in 2007. I heat it because productivity decreased for me.

  51. Sandeep says:

    The thing which wowed me was colour filtering & Sorting

  52. Geoff Morris says:

    Love how all the "wow" is eye-candy crap.

    Sorry, but I finally let the IT department upgrade to 2007 from 2003 (yeah, I know how old all this is) and apart from the (expected) difficulties with the "intuitive" UI redesign (which literally takes me twice as long to find and do anything) I've hit a HUGE unexpected roadblock...

    The 20MB database/iteration-machine I've been maintaining for the last three years has gone from taking 5-10 minutes to run a number-crunching session to, wait for it, 90 minutes!!!

    I was able to reduce it to 50 mins by changing to xlsm format, but this is still around ten times as long as before. Unbelievable!

    This is so bad, that I'm probably going to have to ask IT to install a separate copy of Excel2003 (or maybe run it in a VM or something) just to carry out this task.

  53. anson says:

    well, no offense, but excel 2007 sucks. 2003 is much more convenience when it comes to data processing and graphing. Can I install excel 2003 in window 7?

  54. Hui... says:

    @Anson
    That is a common reaction of people who have used Excel pre 2007 when they change to 2007.
    My advise is to skip 2007 and go straight to 2010.
    Yes it has the same interface, which trust me once your used to, is actually easier to navigate, but it has the problems that 2007 has mostly resolved as well as all the niceties Chandoo has described above included.

  55. Geoff Morris says:

    Why, if all the "wow" seems to be about graphics and formatting, is it now so bloody hard to make a good graph?!? Why can't I use cursor keys to move text boxes? Why can't I copy/paste information in graph data selection? And the real killer: why can't I use cursor keys to edit data ranges for graph input?!?!?

    I have submitted a request to downgrade to 2003.

  56. Shandiz says:

    Hi;
    I have a problem with "New Comment" in Review tab, in Excel 2007.
    It is inactive and I couldn't find how to activate it.
    Any comments?

    • Vijay Sharma says:

      @Shandiz,

      Check to see if your worksheet / workbook has any Protection... if yes you would need to remove that first before being able to add comments.

      ~VijaySharma

  57. Max Otten says:

    Hadn't done a lot of serious database connections and queries with pivot tables and graphs for a few years so was very shocked today to see that office 2007 is incapable of correctly making a simple graph.
    I'm done with this and don't even feel like an IT pro should be re-educated every single time MS decides to release a so called new and improved version full of bugs.
    Going back to 2003 and will leave the new 2010 version I have lying here for what it is.

  58. blah blah says:

    Excel 2007 is an attempt to dumb-down excel for beginners, but infuriate power-users. 1) macro-recorder skips over various steps it used to record. It used to be a very powerful tool to kit-bash together VBA code very quickly. Now, you're left filling in all kinds of gaps from whatever it skipped over. EG: Insert a chart or picture into a worksheet (not as a sheet, but as an object into a sheet). Macro record you deleting that chart/picture. Look at what it record... nothing. This is sloppy. 2) Due to ribbon, they replaced the easy-to-use custom toolbar creation and functionality with bend-over-backwards XML coding and other junk you have to do just to get custom buttons up and running. It's ridiculously user-unfriendly, and a slap in the face to power-users stuck maintaining old toolbars from previous versions. 3) They reorganized some things for the sake or reorganizing. There's no longer "Tools", which was basically a quarantine of advanced functionality for power users. Instead, they shuffled all of those things around to other locations. EG: instead of Tools > Macros, you now have View > Macros. However, they got rid of some of the most useful tools, like the Print Preview button. Look under Page Layout ... no Print Preview. Views? Nope. 4) Office Help flat out sucks. In offline mode, it's about as useful as a tick on a dog's ass, b/c it only glances over the most basic of functions. You can hook to online mode for more robust help, but all that does is put you into "Bing" search engine mode. It's as if you opened up Google to ask your question... and when I ask quesitons and some of the top "answers" that come back are NOT help files written explicityly by microsoft, but instead independant forums where people are scratching their heads asking how to do something, and you have to read 20 people discuss what the problem is, is it this, is it that, will this help, maybe if you try this... Did MS fire their technical writers? The help files from Excel 95 & 97 were amazingly useful and detailed. Excel 2000 saw the quality of help files sliding, and I almost always used Google first. Now... they basically don't have a help file, they just make you go right to "Bing" if you want some answers. In my opinion, they basically charged customers to reinvent a wheel, break things as they went, and did away with any useful help whatsoever, leaving the customer left searching the internet for valid help. This is ridiculously sloppy coming from a multi-BILLION dollar software company that's been churning out the same office software suite for 20 YEARS. Calling 1 step forward and 2 steps backward "progress" is ridiculous, and I think you're being overly generous and sympathetic to MS by doing so. If you want to say you like this new product...fine. Everyone's entitled to an opinion. But, when I upgrade to a new product and LOSE functionality, that is NOT and upgrade, and it's insulting they charged people money to downgrade like this.

  59. blah blah says:

    I guess as a side-note, what really soured my opinon of 2007 from the start was how I converted some 2003 reports into 2007 format in order to take advantage of 2007's file compression.  However, opening one report a couple of times, it would blow up, then Excel would say "hey, I can recover this for you...would you like me to?"  If I click "no", it won't open at all.  If I click "yes", it basically wipes out ALL of the formuals in my workbook (and we're talking a lot of formulas!), and replaces them with hard values.  I got to spend 1/2 my day rebuilding the formulas in the workbook.  Saved it back to 2003 format, and left it alone.  I tried using 2007 format a few more times, and had the same periodic blow-ups / recovers that would hose up my work.  Like I said, this is not progress.  It's infuriating losing work, b/c of the tool you're using.  It's the 21st century.  MS should be doing better than this... WAY better, seeing as they seem to be regressing instead of progressing ever since 2000.

  60. Greg Pronger says:

    Graphing is significantly more cumbersome in 2007 than 2003. th e"Wizard" stepped through the build of the graph, and editing it after was also more straight-forward.
    Considering usability, you would think that 2007 was the predecessor to 2003 and not the reverse.
    If you use graphing whatsoever, I would not upgrade.
     

    • Geoff Morris says:

      Agree totally, Greg. I've been coping with 2007 for a year or so now so I can confirm what you say and add to what I mentioned a few months ago (further up the thread).
      Graphs are harder to tune, they're uglier (wasn't the point to make them "prettier"?!), they're less clear if you're plotting serious science instead of acting the powerpoint jockey (i.e. more than a dozen points), and bizarrely I found out its the graphs which are slowing everything down in my large database. I can *SEE THE REDRAWING* when I switch to a graph after changing the data!!! 
      I've had to completely rebuild and reprogram my database in order to bring the calculation speed back to something like it used to be in 2003, and I've spent several months learning tricks and workarounds to be able to deal with all of 2007's many quirks. I mentioned the cursor key thing in my previous comment... that might be some kind of installation problem since no-one else mentions it (it's a work PC so I can't re-install it myself) but in my case the cursor keys *always* move the cell on the sheet when I'm trying to edit in dialogue boxes. That means using the mouse to place the cursor at various points in the text when selecting graph ranges, defining conditional formatting, etc. The moment I touch the cursor all my editing is wiped out! Also, CTRL-V doesn't work in these cases. It's the most incredibly annoying PitA, and I've had to train my brain to reach for the mouse to click, edit, move, click, edit, right-click, paste, etc. instead of my instinctive cursor left/right, CTRL-C, CTRL-V - which used to be at least twice as fast.

  61. Kevin says:

    sorry if this was already posted somewhere else, but I found this Tool to be a great resource when converting from 2003 to 2007. 
    Graphically shows exactly where to find a command using Ribbon - just need to select using old (2003) method thru Excel Menus.
    http://office.microsoft.com/en-us/excel-help/interactive-excel-2003-to-excel-2007-command-reference-guide-HA010149151.aspx

Leave a Reply