excel vba books

Top 3 Best Excel VBA Books | Recommended VBA Books

Although you can start your Excel VBA Programming journey here on with my Excel VBA Tutorial sometimes it is easier to purchase a good offline read you can take with you on a long flight or simply to carry with you at all times. Through out the years I have see many Visual Basic for Applications handbooks that attempt to upskill the reader on how to create macros in Microsoft Office applications.

Below I am listing some Excel VBA books that from my personal experience as well as from research are definitely worth reaching out to. Remember not to be put off by the supported version of Excel on the title, as VBA as a programming language hasn’t really changed that much since Excel 2013.

Excel 2013 Power Programming with VBA

Written by John Walkenbach aka Mr Spreadsheet (not to be confused with Mr Excel), is one of the most proliferous writers about Excel and VBA, with more that 50 books on his record and counting. His book Excel 2013 Power Programming with VBA is not only one of the highest rated on Amazon.com but also one of the largest with more than 1100 pages worth of code examples.

The book is great if you want to read it from start to end in an attempt to know everything worth knowing about programming in Excel. The downsides are it’s navigation. If you need a quick reference guide this is book has a limited table of contents to navigate.

Pros and Cons

  • Most comprehensive (>1100 pages)
  • Great read and one of the highest reviews on Amazon.com
  • Slightly more expensive
  • Navigation

Excel VBA Programming For Dummies

Second on my list is yet another book by Mr Spreadsheet. Excel VBA Programming For Dummies is a Excel VBA programming book written in a familiar “For Dummies” format and structure. The books makes it easy to learn VBA and skip the more techy bits with explicit call-outs from the author marking fragments of the book as either Tips, Remember(s), Technical Stuff or Warnings.

I think the book is a great take on learning Visual Basic for Applications it is almost as comprehensive as the previous above, however, I expected more visual appeal, here and there the handbook misses screenshot and other visuals that would make the read more appealing. Nevertheless, it is a great reference in case you forget how to do this or that.

Pros and Cons

  • Familiar friendly “For Dummies” navigation
  • Good value for money
  • Expected better structure

VBA and Macros: Microsoft Excel 2010

This time coming from Bill Jelen (Mr Excel) who is another familiar persona in the world of Excel, the book VBA and Macros: Microsoft Excel 2010 (MrExcel Library). This book is worth reading if you want to quick start yourself into writing Excel VBA macros and automations by jumping right in with ready code examples. The book is shorter than the previous 2 above although priced similarly. What I really liked is the amount of images and code examples. You really learn by doing in this book.

The downsides I think are that the book might be harder to comprehend for total beginner programmers. If you have some experience in VBA (or other languages) go for it, however, consider another read if you want to really understand the basics.

Pros and Cons

  • Lots of images and code examples
  • Might be more challenging for beginners


Although there are tons of other Excel VBA books out there I decided to just go for the top 3 from the ones I am familiar with. You might find a lot of alternatives but often getting less value (and often pages/content) for you money. The above mentioned stand in the 20-30s of $ of budget bringing, however, you home into learning how to become proficient in Excel VBA programming.

As closing notes, remember – learning by doing is the best approach. So before you purchase a book I encourage you first to open up the VBA Developer tab and start by Recording a few macros.

Feel free to leave a comment! Did you finish recently any great Excel/VBA book worth recommending?


  1. can you help me with SQL query used for max value from 2 access tables into excel VBA
    I have found it for a single table but for multiple tables, I m unable to figure it out.

    Sql = “select max(invoice_no) as newno from table3”

    kindly help

  2. Thanks for the recommendation – ordered the newest 2016 version of Mr Spreadsheet’s book, figuring there won’t be *that* much novelty in VBA since then.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.