Excel 2003 Power Programming with VBA (Excel Power Programming With Vba)
John Walkenbach


Compras Nikon
Bluetooth
1 The Best Practical VBA book, by the great Walkenbach!
I first heard of John Walkenbach this past summer. I work for a large Financial Services firm in New York City, and our employees use his Excel Add-in extensively. I purchased his book on Power Programming VBA in an effort to learn how to program Excel, and, now, I feel duty-bound, to give you some feedback.

It was early January of this year (2005) when I purchased "Excel 2003 Power Programming". At first I was skeptical. The book arrived, 1000 pages thick, and I do not like wordy books, but having heard of his reputation, I began, what became, a spell-binding read. So intrigued was I by his clear, insightful, and sprightly method in reaching the heart of VBA and its practical Excel uses, that I went back to Amazon and purchased two of his other books: "Excel 2003 Formulas" and "Excel Charts". I have almost completed them, too, and I am reeling with amazement at this man's work and knowledge!

Firstly, the author is one terrific writer who arouses your interest and is able to convey Excel's object structure and its related programming concepts in a way that few others can (especially, if you are new to programming). The writing balance is perfect: not too wordy, not too concise. Secondly, the author's possesses a world-class knowledge of Excel and how to make full use of it. (As I understand, Dr. Walkenbach has written 30 books over the last decade on Excel alone!). Thirdly, the author offers you many superb practical examples - page after page. This greatly aids your understanding and inspires your imagination. Fourthly, the book is packed with Excel tips and tricks that will, sometimes, fascinate you or humble you if you considered yourself an Excel expert. (This is even more applicable to his book on Excel Formulas).

I have read or perused a number of the well-known Excel VBA Programming books, but I have, so far, seen nothing that comes close to this author's book in terms of clarity and rich content. Beyond Excel, John Walkenbach's brilliant presentation is a lesson to all book-writers on how to present material to learners!

The following were some of the highlights for me. The author shows in detail how to write custom functions; how to build a Wizard; how to build self-expanding or interactive charts (animated charts too!); how to build a progress indicator to show the progress of a long macro; how to transfer ranges into an array, manipulate it, and back; how to make a spreadsheet appear in a dialogue box (or user form); how to produce complex user forms; and the hidden details behind Excel events. The author's explanation of Excel Add-Ins in Chapter 21 is so clear that, after reading the material, I was able to create one in minutes! In Chapter 23, the author gives you his personal technique (and code) for automating the building of menus in Excel. The author also shows you how to build your own objects (if you don't understand this now, you will), and how to manipulate files in your computer from VBA.

Accompanying the book is a CD with a treasure-trove of practical demonstrations, bonus utilities and more. The plethora is organized by chapter, so you can read through the book and see the concepts in action. I guarantee you that this CD alone (and those that accompany his other books) outclasses those available with competing books. An e-book is also included so you can print out any chapter to read on the train etc. The author, to his credit, also takes extra care to make his VBA code very readable and understandable (unlike other VBA books that I have read or perused).

The author's creative side will probably rub off on you, as you watch him produce an exact replica of Microsoft's functions (using VBA instead of C) and do some other sportive exercises that demonstrate so well the power of VBA! (If you read his book on charts you will sometimes not believe it until you see it.)

Dr. Walkenbach goes further and outdoes Microsoft at their own game! On Page 508, he unveils his enhanced version of Excel's Form utility. (See Data > Forms... on the Excel menu). His improved version adds a lot of needed features to Excel's native version. Throughout the book, the author brings up Excel's limitations that present a challenge to professionals. Instead of bemoaning Microsoft's shortcomings (a pet peeve for other authors), he whips out a trick or three to overcome the impasse. (For example, creating a chart in a dialogue box, P. 499.)

Dr. Walkenbach comes across as wanting to share with you his full knowledge, in order to turn the ordinary, but proficient, Excel user into a "power programmer". Furthermore, the author allows you to buy the full source code of his award winning "Power Utility Pak", which he sells for a living! Truly great teachers derive satisfaction from giving you their full knowledge, and that is the case with John Walkenbach, a magnanimous and dedicated author, an "Excel Legend" - in the words of Bastien Mensink developer of ASAP Utilities (www.Asap-Utilities.com).

Who should NOT buy John Walkenbach's book?
That's right, I said it! And here is the answer. If you are an experienced programmer or academic looking for a more theoretical approach, or want an Excel-programming Reference book (that covers all or most of the objects in Excel's Object Structure with its thousands of properties and methods), or just want a little more computer science, then you are simply at the wrong book-stand. However, out of the vast majority of Excel users, for those who wish to rapidly become Excel programmers, this book (and his others) are the cr¸me-de-la-cr¸me. Taking myself (an ordinary Excel user) as an example, I gained such a wealth of knowledge from the author's books in the last three months that I now find myself floating effortlessly through Microsoft's Excel Object Model and Help topics, and going a step beyond his books.
I hope this addresses the subjective critique emerging from one or two reviewers (and, perhaps, from a few more intelligent-but-not-so-wise ones to come.)

Conclusion:
Regarding the art of book writing, let us take, for example, a subject such as physics. Which of two equally capable authors does more collective good, one who writes a perfectly logical treatise which is only understood by a few with a mind or drive to understand, or an author who takes the former and puts it forth in an exciting manner so that his readers' minds fill with knowledge?

Einstein said: "I have no special gift - I am only passionately curious"
Perhaps you will agree with me that it is of greater good to create curiosity that to simply feed it.

Thank you Dr. Walkenbach!!!

2 Out of date
John is a great writer. I have a number of his books in my library.

Unfortunately, he's not keeping up with the product. The primary changes in Excel 2003 (xml, SharePoint integration, InfoPath, etc) are essentially missing from his Book. No where does he explain how Excel's object model has been extended to support these important new features.

Its like he took the Excel 2000 version of this book and pretty much just changed the date on the cover.

I returned my copy.
3 very disapointing...
I was very disappointed in the book. I have written some macros in VBA for excel and wanted to expand my knowledge while creating some useful macros for my company.
If one was intending to read this book front to back, I am sure they could learn quite a lot about Excel and VBA, but as for using it as a tool to expand on existing knowledge and/or as a reference...it falls short.
Most of the examples did some neat things, but trying to build upon them to fit a specific need indicated just how limited the explanation of how the examples work are.
I often ran across things in the examples that I would later find a use for, but then be unable to locate them since they were buried in some seeming unrelated portion of the book, and the index was just about useless.
If you want to start learning VBA or if the examples in the book do what you need then this may be the book for you, but if you are expecting to build upon the examples and/or use them as a reference for writing your own custom macros/tools, I would suggest looking elsewhere.

4 Great buy !!!, You won't be sorry to buy it!
I have been using John Walkenbach's VBA book for several years starting 2000 version and one of the best investments I have ever made in terms of book.

You don't have to read the book all, you just decide what you wnat to do and quickly find it in the book. Then the examples are great and helpful. I owe everything I know in Excel VBA to this book and had written programs with 16000+ line codes of VBA.

If I ever write a book, I wish I could do as good as John Walkenbach.
5 Excellent book for beginner - intermediate / transitioning
This is a great book for those that are
-Advanced Excel users, but Beginner / Intermediate with VBA
-Programmers that are picking up VBA (Me)

Not for
-Basic Excel users
-Advanced VBA programmers

General Outline
The author steps through the basics of spreadsheets and spreadsheet applications before introducing VBA, and does well covering most of the aspects of Excel.

Good - This is a weighty tome, coming in at over 1,000 pages, and is an overall excellent reference to those that are starting to use VBA.
- Contains excellent overview of using VBA with Excel, with extensive coverage of userforms and all their controls, and actual programming.
- Gets deep into Excel specific features like charts and pivot tables
- Excellent coverage of the differences (and possible problems) with different versions of Excel.
- FAQ and Appendixes that are actually helpful and provide useful information

Bad - Not too much to really pick on here, but I generally dislike books that are filled with some extraneous information, just to get that "Ultimate Reference" look about them. The chapter "Excel 2003:Where it came From", and the sometimes overly inflated explanations seemed liked padding. But otherwise a GREAT book.
6 If you buy only one VBA book...
My principal occupation for the last 13 years has revolved around Excel macros and VBA. Walkenbach's Excel books have been lifesavers.

Just reading one page in this book pulled me out of a ticklish problem constructing a menu. The code examples are complete and always accurate (and well annotated).

My first 15 minutes with this book saved me the cover price in not having to stop what I was doing to search the web for an obscure instruction.

If you do any programming in Excel; buy this book!
7 Great book to read cover-tocover and use as a reference!
I was blown away by this book. When it arrived, I started thumbing through it and learned something new within five minutes. Though I've been an Excel user for years and have been doing programming in Excel for some time, I started reading this book from page one and couldn't stop.

There is so much to learn from this book for all users (beginners through advanced) and it makes an excellent reference book.

John writes in a way that is understandable, down-to-earth, and practical. His examples are real-life solutions to real problems.

A great investment and highly recommended.


8 Buy a book to match your background and needs
Needing to finish my first Excel add-in, and frustrated by the incompleteness and obscurity of MS's help system, I picked up this book after reading warm recommendations from readers of earlier versions.

If you have never programmed Excel before, but have programmed a tiny bit in some other language, and do not have great ambitions for software development, this might be a fine text. It is quite readable and full of useful information. Walkenbach introduces VBA quickly, which is great, but so quickly he forgets to say what most of the language constructs do. His approach to teaching the Excel object model is to provide several fairly well written examples of little macros and utilities, each one with a clear English explanation. Unfortunately, if the technique you need does not appear in any of these examples, you are out of luck, because his explanations are neither extensive, detailed, nor thorough enough to impart a good understanding of what is going on. This, coupled with Excel's erratic behavior (mis-type a property name and watch your user form mysteriously disappear, for instance), makes it very difficult to become independently productive without spilling a lot of sweat and tears.

The book's strengths include the numerous and well-organized examples provided on the companion CD; the occasional sidebar that offers first-hand knowledge of bugs, inconsistencies, and strange design; fairly broad, if incomplete, coverage of the major aspects of Excel VBA programming; and very clear indications of differences among various Excel versions (97, 2000, 2003 mainly). Walkenbach is obviously an expert and has been so for a long time.

The weaknesses become apparent in contrasting this book with, say, Roman's text (O'Reilley). Where Walkenbach gives a macro to display all the icons associated with the several thousand Excel 'FaceId's, Roman publishes the complete table as an appendix. Where Walkenbach loosely skims over the properties of many key objects, such as ranges and charts, Roman takes the time to provide a terse but useful description of nearly every property, as well as a very illuminating diagram of the object hierarchy. Where Walkenbach completely omits to describe how VBA works, Roman actually offers a deeper explanation (showing how object references are arranged in memory, for instance, and describing exactly how a for..next loop is executed). Boring stuff for some, maybe, but a huge time saver for those who appreciate that the details matter. For someone who either has a lot of programming experience, or who plans to develop more than toy utilities or one-off apps in Excel VBA, Roman's approach is much more useful than Walkenbach's.

If Walkenbach is appropriate for your background and ambitions, then you will probably agree it is a four- or five-star effort. Otherwise, you will likely be somewhat disappointed and, like me, will quickly find yourself looking for another book.



Sunday, 06-Jul-2008 01:59:11 CDT
Quote of the Day:


We have met the enemy, and he is us.

-- Walt Kelly

My friends, I am here to tell you of the wonderous continent known as
Africa. Well we left New York drunk and early on the morning of February 31.
We were 15 days on the water, and 3 on the boat when we finally arrived in
Africa. Upon our arrival we immediately set up a rigorous schedule: Up at
6:00, breakfast, and back in bed by 7:00. Pretty soon we were back in bed by
6:30. Now Africa is full of big game. The first day I shot two bucks. That
was the biggest game we had. Africa is primerally inhabited by Elks, Moose
and Knights of Pithiests.
The elks live up in the mountains and come down once a year for their
annual conventions. And you should see them gathered around the water hole,
which they leave immediately when they discover it's full of water. They
weren't looking for a water hole. They were looking for an alck hole.
One morning I shot an elephant in my pajamas, how he got in my
pajamas, I don't know. Then we tried to remove the tusks. That's a tough
word to say, tusks. As I said we tried to remove the tusks, but they were
imbedded so firmly we couldn't get them out. But in Alabama the Tuscaloosa,
but that is totally irrelephant to what I was saying.
We took some pictures of the native girls, but they weren't developed.
So we're going back in a few years...
-- Julius H. Marx [Groucho]