Microsoft Office Tutorials and References
In Depth Information
Concerning Yourself with the End User
Bugs? In Excel?
You may think that a product like Excel, which is used by millions of people throughout the
world, would be relatively free of bugs. Think again. Excel is such a complex piece of software
that it is only natural to expect some problems with it. And Excel does have some problems.
Getting a product like Excel out the door isn’t easy, even for a company like Microsoft with
seemingly unlimited resources. Releasing a software product involves compromises and
tradeoffs. It’s commonly known that most major software vendors release their products with full
knowledge that they contain bugs. Most bugs are considered insignificant enough to ignore.
Software companies could postpone their releases by a few months and fix many of them, but
software, like everything else, is ruled by economics. The benefits of delaying a product’s release
often don’t exceed the costs involved. Although Excel definitely has its share of bugs, my guess
is that the majority of Excel users never encounter one.
In this topic, I point out the problems with Excel that I know about. You’ll surely discover some
more on your own. Some problems occur only with a particular version of Excel — and under a
specific configuration involving hardware and/or software. These bugs are the worst ones of all
because they aren’t easily reproducible.
So what’s a developer to do? It’s called a workaround. If something that you try to do doesn’t
work — and all indications say that it should work — it’s time to move on to Plan B. Frustrating?
Sure. A waste of your time? Absolutely. It’s all part of being a developer.
Although you can’t conceivably test for all possibilities, your macros should be able to handle
common types of errors. For example, what if the user enters a text string instead of a numeric
value? What if the user tries to run your macro when a workbook isn’t open? What if he cancels a
dialog box without making any selections? What happens if the user presses Ctrl+F6 and jumps
to the next window? When you gain experience, these types of issues become very familiar, and
you account for them without even thinking.
Making the application bulletproof
If you think about it, destroying a spreadsheet is fairly easy. Erasing one critical formula or value
can cause errors throughout the entire worksheet — and perhaps even other dependent
worksheets. Even worse, if the damaged workbook is saved, it replaces the good copy on disk. Unless
a backup procedure is in place, the user of your application may be in trouble, and you’ll
probably be blamed for it.