reetings, prospective Excel programmer . . .
Thanks for buying my book. I think you'll find that it offers a fast, enjoyable way to discover the ins and outs of Microsoft Excel programming. Even if you don't have the foggiest idea of what programming is all about, this book can help you make Excel jump through hoops in no time (well, it will take some time).
Unlike most programming books, this one is written in plain English, and even normal people can understand it. Even better, it's filled with information of the "just the facts, ma'am" variety — and not the drivel you might need once every third lifetime.
Is This the Right Book?
Go to any large bookstore and you'll find many Excel books (far too many, as far as I'm concerned). A quick overview can help you decide whether this book is really right for you. This book
¡^ Is designed for intermediate to advanced Excel users who want to learn Visual Basic for Applications (VBA) programming.
¡^ Requires no previous programming experience.
¡^ Covers the most commonly used commands.
¡^ Just might make you crack a smile occasionally — it even has cartoons.
If you are using Excel 5, Excel 95, or Excel 97, this book is not for you. Although there are many similarities between the current version of Excel and previous versions, there are also many subtle (and not-so-subtle) differences that can be perplexing and can likely confuse you. If you're still using a pre-2000 version of Excel, locate a book that is specific to that version. Or consider upgrading your copy of Excel.
This is not an introductory Excel book. If you're looking for a general-purpose Excel book, check out any of the following books, which are all published by Wiley:
^ Excel 2003 For Dummies, by Greg Harvey
^ Excel 2003 Bible, by John Walkenbach (yep, that's me)
^ Excel 2003 For Dummies Quick Reference, by John Walkenbach (me again) and Colin Banfield
Notice that the title of this book isn't The Complete Guide to Excel VBA Programming For Dummies. I don't cover all aspects of Excel programming — but then again, you probably don't want to know everything about this topic. In the unlikely event you want a more comprehensive Excel programming book, you might try Microsoft Excel 2003 Power Programming with VBA, by John Walkenbach (is this guy prolific, or what?), also published by Wiley Publishing.
Besides earning money to pay my bills, my main goal in writing this book is to teach Excel users how to use the VBA language — a tool that helps you significantly enhance the power of the world's most popular spreadsheet. Using VBA, however, involves programming. (Yikes! The p word.)
If you're like most computer users, the word programmer conjures up an image of someone who looks and behaves nothing like you. Perhaps words such as nerd, geek, and dweeb come to mind.
Times have changed. Computer programming has become much easier, and even so-called normal people now engage in this activity. Programming simply means developing instructions that the computer automatically carries out. Excel programming refers to the fact that you can instruct Excel to automatically do things that you normally do manually — saving you lots of time and (you hope) reducing errors. I could go on, but I need to save some good stuff for Chapter 1.
If you've read this far, it's a safe bet that you need to become an Excel programmer. This could be something you came up with yourself or (more likely) something your boss decided. In this book, I tell you enough about Excel programming so that you won't feel like an idiot the next time you're trapped in a conference room with a group of Excel aficionados. And by the time you finish this book, you can honestly say, "Yeah, I do some Excel programming."
Most Excel users never bother to learn VBA programming. Your interest in this topic definitely places you among an elite group. Welcome to the fold! If you're still not convinced that learning Excel programming is a good idea, I've come up with a few good reasons why you might want to take the time to learn VBA programming.
i It will make you more marketable. Like it or not, Microsoft's applications are extremely popular. You may already know that all applications in Microsoft Office support VBA. The more you know about VBA, the better your chances for advancement in your job.
i It lets you get the most out of your software investment (or, more likely, your employer's software investment). Using Excel without knowing VBA is sort of like buying a TV set and watching only the odd-numbered channels.
i It will improve your productivity (eventually). Learning VBA definitely takes some time, but you'll more than make up for this in the amount of time you ultimately save because you're more productive. Sort of like what they told you about going to college.
i It's fun (well, sometimes). Some people really enjoy making Excel do things that are otherwise impossible. By the time you finish this book, you just might be one of those people.
Now are you convinced?
People who write books usually have a target reader in mind. For this book, my target reader is a conglomerate of dozens of Excel users I've met over the years (either in person or out in cyberspace). The following points more or less describe my hypothetical target reader:
^ You have access to a PC at work — and probably at home.
^ You're running Excel 2000 or later.
^ You've been using computers for several years.
^ You use Excel frequently in your work, and you consider yourself to be more knowledgeable about Excel than the average bear.
^ You need to make Excel do some things that you currently can't make it do.
^ You have little or no programming experience.
^ You understand that the Help system in Excel can actually be useful. Face it, this book doesn't cover everything. If you get on good speaking terms with the Help system, you'll be able to fill in some of the missing pieces.
^ You need to accomplish some work, and you have a low tolerance for thick, boring computer books.
Obligatory Typographical Conventions Section
All computer books have a section like this. (I think some federal law requires it.) Read it or skip it.
Sometimes, I refer to key combinations — which means you hold down one key while you press another. For example, Ctrl+Z means you hold down the Ctrl key while you press Z.
For menu commands, I use a distinctive character to separate menu items. For example, you use the following command to open a workbook file:
Excel programming involves developing code — that is, the instructions Excel follows. All code in this book appears in a monospace font, like this:
Some long lines of code don't fit between the margins in this book. In such cases, I use the standard VBA line continuation character sequence: a space followed by an underscore character. Here's an example:
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
When you enter this code, you can type it as written or place it on a single line (omitting the spaces and the underscore characters).
It's a cruel world out there. It seems that some scam artist is always trying to take advantage of you or cause some type of problem. The world of computing is equally cruel. You probably know about computer viruses, which can cause some nasty things to happen to your system. But did you know that computer viruses can also reside in an Excel file? It's true. In fact, it's relatively easy to write a computer virus using VBA. An unknowing user can open an Excel file and spread the virus to other Excel workbooks.
Over the years, Microsoft has become increasingly concerned about security issues. This is a good thing, but it also means that Excel users need to understand how things work. You can check Excel's security settings by using the Tools O Macro O Security command. Your options are Very High, High, Medium, and Low. Check Excel's Help system for details on these settings.
Consider this scenario: You spend a week writing a killer VBA program that will revolutionize your company. You test it thoroughly, and then send it to your boss. He calls you into his office and claims that your macro doesn't do anything at all. What's going on? Chances are, your boss's security setting does not allow macros to run. Or, maybe he chose to disable the macros when he opened the file.
Bottom line? Just because an Excel workbook contains a macro it is no guarantee that the macro will ever be executed. It all depends on the security setting and whether the user chooses to enable or disable macros for that file.
In order to work with this book, you will need to enable macros for the files you work with. My advice is to use the Medium security level. Then, when you open a file that you've created, you can simply enable the macros. If you open a file from someone you don't know, you should disable the macros and check the VBA code to ensure that it doesn't contain anything destructive or malicious.
I divided this book into seven major parts, each of which contains several chapters. Although I arranged the chapters in a fairly logical sequence, you can read them in any order you choose. Here's a quick preview of what's in store for you.
Part I: Introducing VBA
Part I has but two chapters. I introduce the VBA language in the first chapter. In Chapter 2, I let you get your feet wet right away by taking you on a hands-on guided tour.
Part II: How VBA Works with Excel
In writing this book, I assumed that you already know how to use Excel. The four chapters in Part II give you a better grasp on how VBA is implemented in Excel. These chapters are all important, so I don't recommend skipping past them, okay?
Part III: Programming Concepts
The eight chapters in Part III get you into the nitty-gritty of what programming is all about. You may not need to know all this stuff, but you'll be glad it's there if you ever do need it.
Part IV: Developing Custom Dialog Boxes
One of the coolest parts of programming in Excel is designing custom dialog boxes (well, at least I like it). The four chapters in Part IV show you how to create dialog boxes that look like they came straight from the software lab at Microsoft.
Part V: Creating Custom Toolbars and Menus
Part V has two chapters, both of which address user interface topics. One chapter deals with creating custom menus; the other describes how to customize toolbars.
Part VI: Putting It All Together
The four chapters in Part VI pull together information from the preceding chapters. You find out how to develop custom worksheet functions, create add-ins, design user-oriented applications, and even work with other Office applications.
Part VII: The Part of Tens
Traditionally, books in the For Dummies series contain a final part that consists of short chapters containing helpful or informative lists. Because I'm a sucker for tradition, this book has two such chapters that you can peruse at your convenience. (If you're like most readers, you'll turn to this part first.)
Somewhere along the line, a market research company must have shown that publishers can sell more copies of their computer books if they add icons to the margins of those books. Icons are those little pictures that supposedly draw your attention to various features, or help you decide whether something is worth reading.
I don't know if this research is valid, but I'm not taking any chances. So here are the icons you'll encounter in your travels from front cover to back cover:
When you see this icon, the code being discussed is available on the Web. Download it, and eliminate lots of typing. See "Get the Sample Files," below, for more information.
This icon flags material you might consider technical. You might find it interesting, but you can safely skip it if you're in a hurry.
Don't skip information marked with this icon. It identifies a shortcut that can save you lots of time (and maybe even allow you to leave the office at a reasonable hour).
This icon tells you when you need to store information in the deep recesses of your brain for later use.
Read anything marked with this icon. Otherwise, you may lose your data, blow up your computer, cause a nuclear meltdown — or maybe even ruin your whole day.
This book has its very own Web site where you can download the example files discussed and view Bonus Chapters. To get these files, point your Web browser to:
Having the sample files will save you a lot of typing. Better yet, you can play around with them and experiment with various changes. In fact, I highly recommend playing around with these files. Experimentation is the best way to learn VBA.
Reading this introduction was your first step. Now, it's time to move on and become a programmer (there's that p word again!).
If you're a programming virgin, I strongly suggest that you start with Chapter 1 and progress in chapter order until you've discovered enough. Chapter 2 gives you some immediate hands-on experience, so you'll have the illusion that you're making quick progress.
But it's a free country (at least it was when I wrote these words); I won't sic the Computer Book Police on you if you opt to thumb through randomly and read whatever strikes your fancy.
I hope you have as much fun reading this book as I did writing it.
Was this article helpful?