Introduction

Greetings, 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 (in-person or online), 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

check.png Is designed for intermediate to advanced Excel users who want to get up to speed with Visual Basic for Applications (VBA) programming.

check.png Requires no previous programming experience.

check.png Covers the most commonly used commands.

check.png Is appropriate for Excel 2010 or Excel 2013.

check.png Just might make you crack a smile occasionally — it even has cartoons.

If you’re using Excel 2000, XP, or 2003, this book is not for you. If you’re using Excel 2007, it might be okay, but some things have changed. You’d probably be better off with the previous edition.

Oh yeah, 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:

check.png Excel 2013 For Dummies, by Greg Harvey

check.png Excel 2013 Bible, by John Walkenbach (yep, that’s me)

These books are also available in editions for earlier versions of Excel.

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. If you consume this book and find that you’re hungry for a more comprehensive Excel programming book, you might try Microsoft Excel 2013 Power Programming with VBA, by John Walkenbach, also published by Wiley. And, yes, editions for older versions of Excel are also available.

So You Want to Be a Programmer. . . .

Besides earning money to pay my bills, my main goal in writing this book is to show 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 — and even admit it to friends and family. 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.”

Why Bother?

Most Excel users never bother to explore 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 mastering 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:

check.png 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.

check.png 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.

check.png It will improve your productivity (eventually). Mastering 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.

check.png 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?

What I Assume about You

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:

check.png You have access to a PC at work — and probably at home. And those computers are connected to the Internet.

check.png You’re running Excel 2010 or Excel 2013.

check.png You’ve been using computers for several years.

check.png You use Excel frequently in your work, and you consider yourself to be more knowledgeable about Excel than the average bear.

check.png You need to make Excel do some things that you currently can’t make it do.

check.png You have little or no programming experience.

check.png 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.

check.png 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 items on the Ribbon or menu. For example, you use the following command to create a named range in a worksheet:

Formulas⇒Defined Names⇒Define Name

Formulas is the tab at the top of the Ribbon, Defined Names is the Ribbon group, and Define Name is the actual command.

The Visual Basic editor still uses old-fashioned menus and toolbars. So I might tell you to choose Tools⇒Options. That means choose the Tools menu and then choose the Options menu item.

Any text you need to enter appears in bold. For example, I might say, enter =SUM(B:B) in cell A1.

Excel programming involves developing code — that is, the instructions Excel follows. All code in this book appears in a monospace font, like this:

Range("A1:A12").Select

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 space and underscore combination).

Check Your Security Settings

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 by using VBA. An unknowing user can open an Excel file and spread the virus to other Excel workbooks, and to other systems.

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 File⇒Options⇒Trust Center⇒Trust Center Settings command. There is a plethora of options in there, and people have been known to open that dialog box and never be heard from again.

If you click the Macro Settings tab (on the left side of the Trust Center dialog box), your options are as follows:

check.png Disable all macros without notification: Macros will not work, regardless of what you do.

check.png Disable all macros with notification: When you open a workbook with macros, you will either see the Message Bar open with an option you can click to enable macros, or (if the Visual Basic Editor window is open) you’ll get a message asking if you want to enable macros.

check.png Disable all macros except digitally signed macros: Only macros with a digital signature are allowed to run (but even for those signatures you haven’t marked as trusted, you still get the security warning).

check.png Enable all macros: Let all macros run with no warnings. This option is not recommended because potentially dangerous code can be executed.

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 go along with Microsoft’s default suggestion and 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 second 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. Usually, it’s pretty easy to identify suspicious VBA code.

Another option is to designate a trusted folder. Choose File⇒Options⇒Trust Center⇒Trust Center Settings. Select the Trusted Locations option and then designate a particular folder to be a trusted location. Store your trusted workbooks there, and Excel won’t bug you about enabling macros. For example, if you download the sample files for this book, you can put them in a trusted location.

How This Book Is Organized

I divided this book into six 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: Getting Started with Excel VBA Programming

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 assume 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 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: Communicating with Your Users

One of the coolest parts of programming in Excel is designing custom dialog boxes (well, at least I like it). The five 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: Putting It All Together

The two chapters in Part V pull together information from the preceding chapters. You discover how to include your own custom buttons in the Excel user interface, and you find out how to develop custom worksheet functions, create add-ins, design user-oriented applications, and even work with other Office applications.

Part VI: The Part of Tens

Traditionally, books in the For Dummies series contain a final part that consists of short chapters with helpful or informative lists. Because I’m a sucker for tradition, this book has three such chapters that you can peruse at your convenience.

Icons Used in This Book

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 encounter in your travels from front cover to back cover:

ontheweb_modern.eps When you see this icon, the code being discussed is available on the web. Download it to eliminate lots of typing. See “Getting the Sample Files” for more information.

technicalstuff.eps This icon flags material that you might consider technical. You may find it interesting, but you can safely skip it if you’re in a hurry.

tip.eps 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).

remember.eps This icon tells you when you need to store information in the deep recesses of your brain for later use.

warning_bomb.eps 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.

Getting the Sample Files

This book has its very own website where you can download the example files. To get these files, point your web browser to

http://dummies.com/go/excelvbaprogrammingfd3e

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 master VBA.

Now What?

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 through the book until you’ve discovered enough to do what you want to do. Chapter 2 gives you some immediate hands-on experience, so you 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.

Occasionally, John Wiley & Sons has updates to its technology books. If this book does have technical updates, they will be posted at

http://dummies.com/go/excelvbaprogrammingfdupdates

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset