Wednesday, May 23, 2007

Excel 2007 Tips

I am using Excel 2007 quite a bit now, and starting to really experience the pain of switching between 2003 and 2007.
At least I am starting to get the hang of the ribbon.

Charley Kyd writes about Excel2007 on

What We'll Do About Excel 2007
I'm not one of Excel 2007's biggest fans. Although the program offers many outstanding new features, it has a completely new user interface.
Microsoft designed the interface to make it easier for new and occasional users to discover Excel's features. They didn't design the interface to make frequent users more efficient.
In business, Excel users are much like factory workers. Our job is to quickly produce reports, analyses, and other forms of business insight. Unfortunately, Excel 2007 requires more mouse clicks and more mouse travel than does earlier versions. It's inherently less efficient. Therefore, even after you've learned the new interface well, you'll probably take longer to perform standard tasks in the new Excel.
Even so, there's no going back. Eventually, you'll need to adapt to Excel 2007, or to one of its successors. At ExcelUser, we also need to adapt.
Therefore, all future articles that describe hands-on use of Excel will be offered in two versions. One version will be for old Excel, the other for new Excel. Each such article will begin with a link to the other version. And slowly, we'll offer new-Excel versions of past articles written for old Excel.
Because Excel 2007 introduces new terminology, many of the new-Excel articles will reference The Excel 2007 User Interface. This article provides one location for defining those new terms.
I will be taking similar approach here.

Labels: ,

Wednesday, April 25, 2007

Excel 2003-2007 conversion project

Here is the email I am sending all my clients that we have written Excel tools for.

I want to ask about whether your IT department is looking at rolling out Office 2007 at all in the near future. When this happens there will be a LOT of work required to make existing excel tools work in that environment. The same will apply to all the work we have developed, and also potentially any other Excel files that you currently use.

I suggest that we start the work now. I suggest we make it code safe to work in 2003 and 2007 so that as you start to get a mixed environment to work with that it will continue to operate. I have a developer working for me now who is managing all my office 2003-2007 conversion projects.

If you have Excel tools that have any VBA in them chances are they will not convert to 2007 with out some effort.
Feel free to contact us to arrange a quote to analyse / convert your files.

Labels: , ,

Tuesday, April 17, 2007

Excel 2007 and backward compatibility

Backward compatibility is important to anybody who writes Excel spreadsheets or uses VBA code. Backward compatibility means that features that are new in the new version will still work when run on the old version. This is not the case with Excel 2007, 2003, 2000, 97 or 95.

Excel 2007 allows you to save in a 2003 format. However being able to save in a previous version does not make something backward compatible. It simply means you can save in a previous version. Note to do this you will lose functionality of new features not supported under the old application, as well as possibly creating errors and breakages.

VBA Code differences
In each version change there have been changes to code, objects, interaction with these objects using VBA, libraries etc that have meant that VBA code written in the newer versions does not always work correctly or at all when run on the older versions. Often there are new arguments or options to functions that are introduced in new versions. These will cause errors if run in previous versions that don’t support those arguments or options. Using the Save As feature does not fix this.

Some specific examples include.
Excel 2007 - the new colour themes are not using the same colour codes that Excel 2003 used. Write code in 2007 and expect it to run on 2003 - no way. At least this forward compatible.

Use code in 2007 to open a CSV file and move the sheet into an existing Excel 2003 workbook. This will not work in Excel 2007. Excel 2007 opens the CSV file as a 2007 workbook with million rows. This cannot be moved into the 2003 workbook as the sheet is not compatible with this format. This is an example of a forward compatible issue

Of course these things can be fixed, like we fixed all the problems with all the previous "upgrades". Painstakingly going through thousands of lines of code and debugging all the error traps, all the function arguments and parameters that may be only used in certain circumstances.

For the average user who has recorded a macro to change some cells colours or open a CSV file (fairly common practices) these spreadsheets are NOT backward or forward compatible.

Spreadsheet differences
There are also numerous issues with the Save As feature. If you have a 2007 spreadsheet that is larger than the 2003 allowed size this cannot get saved as 2003 properly. If you are using the new conditional formatting these get badly converted when Saved As 2003. Even basic things like range names and filters don’t work the same way and don’t convert back properly.

In my opinion, treat Excel 2007 as a new application. Don’t use the compatibility feature unless you are able to test and retest everything you write on the old versions.
Assume that your users will open in 2003, or 2002 (XP) or even 2000, write your code accordingly and test, test, test for it.

Labels: , ,