Learn How to Write Excel VBA for Real-World Applications

This course will arm you with years of knowledge and experience, condensed into an easy-to-follow format. Rather than spending months searching websites, trawling through videos and pouring over books, this program will turn you into someone who can create effective Excel VBA solutions.

Does the following sound familiar...

  • You use Google for every single line of code

  • You waste lots of time looking at random websites or YouTube videos

  • You feel overwhelmed at the very thought of starting a VBA project

  • You know there must be a better way to use VBA

  • You don't know what is available code wise and how best to use it

  • You have spent money on courses or books but found they didn’t teach you what you needed

Hi, I'm Paul Kelly, Microsoft MVP and founder of ExcelMacroMastery YouTube Channel and Website

I have been writing software for almost 30 years including 10 years creating Excel VBA applications.

I created the Effective Excel VBA course because I know that many people struggle to use VBA in real-world situations.

I wanted to provide a practical way for users to learn how to write practical Excel VBA.
Hi, I'm Paul Kelly, Microsoft MVP and founder of <b>ExcelMacroMastery</b> YouTube Channel and Website

What is the Effective Excel VBA course?

This course will 10x your VBA skills by teaching you proven techniques and methods that work time and time again. It will take you step-by-step through these methods so that you understand everything completely. You can then apply these methods to your own applications and you will be amazed at the results.

The course comes with tons of practical code examples so you don't need to reinvent the wheel. You can simply take the prewritten code and use it in your own application in seconds.

There are exercises for each topic so that you can reinforce your learning. Each exercise comes with a solution so you can see exactly how it should be completed.

Effective Excel VBA Course Highlights

  • Learn how to create effective real-world Excel VBA solutions

  • Practical techniques and best practices for VBA

  • Pre-written code for all the common VBA tasks

  • Proven principles to reduce errors in your code by up to 90%

  • Hands-on exercises and real-world examples

Richard Powers
FedEx: Senior Auditor

I can't recommend the Effective Excel VBA course highly enough.

Paul's courses and products focus on you as a programmer from a programmers point of view. He is continually updating the content based on his extensive VBA experience. And more than just training and code snippets, Paul's courses and webinars have helped me, as an amateur programmer and power Excel user, to form good habits for both coding and documentation.

Mark Chapman
Managing Director

The highest recommendation. Extremely Relevant Material

Paul's content differs from all others I have seen. It's written to be a) compartmentalized and thus more easily debugged & maintained b) less susceptible to even infrequently occurring problems and c) very efficient. Knowing his coding techniques not only helps me with my own coding but also puts him at the top of my list should I ever have the need to recommend a top-notch analyst/programmer.

Jorg Hardt

The course material and how it's structured is excellent

The course is concise, logical, easy to follow and to the point. In addition, the material provides lots of useful (simple) examples (as a starting point) on how to best approach real life problems course participants may have and provides the ability to dig deeper by reference to existing material.

Course curriculum

  • 1
    Welcome to the course!
  • 2
    Module 1: Mastering the Basics
    • Glossary
    • Shortcut keys
    • The Visual Basic editor FREE PREVIEW
    • Activity 1 (Getting Started)
    • Understanding the Visual Basic editor windows
    • How to create a sub
    • Activity 2 (Getting Started)
    • How to write values to spreadsheet cells
    • Activity 3 (Getting Started)
    • Important note about downloading Excel workbooks
  • 3
    Module 2: Accessing Worksheets
    • Notes on using OneDrive
    • How to select the correct worksheet
    • Activity 1 (Accessing Worksheets)
    • Accessing sheets in other workbooks
    • Opening a workbook for reading
    • Activity 2 (Accessing Worksheets)
    • Opening a workbook for writing
    • Activity 3 (Accessing Worksheets)
    • Troubleshooting worksheets
    • Activity 4 (Accessing Worksheets)
    • Quick Guide: How to select the worksheet
  • 4
    Module 3: Dealing With Multiple Workbooks
    • Introduction
    • Retrieving multiple files from a folder
    • Activity 1 (Multiple Workbooks)
    • Using the Windows Open Dialog to select files
    • Activity 2 (Multiple Workbooks)
  • 5
    Module 4: Project 1 - Basic Data Manipulation
    • How to read data records
    • Activity 1 (Project 1)
    • Using CurrentRegion to select the range
    • Activity 2 (Project 1)
    • Understanding the For Loop
    • Activity 3 (Project 1)
    • Understanding the For Each Loop
    • Using the If Statement to make decisions
    • How to write data records
    • Activity 4 (Project 1)
  • 6
    Module 5: Techniques for Clean Code
    • Using the With Statement
    • Activity 1 (Clean Code)
    • Indenting the code
    • Activity 2 (Clean Code)
  • 7
    Module 6: How to Use Variables Correctly
    • Basic variables
    • How to declare variables
    • Activity 1 (Variables)
    • Assigning variable values
    • Activity 2 (Variables)
    • Variable scope - the variable lifetime
    • Activity 3 (Variables)
    • How to use object variables
    • The Object Model Hierarchy
  • 8
    Module 7: Project 2 - How To Design Your Code
    • Project requirements
    • Activity 1 (Project 2)
    • Basic solution to the project
    • Enums - how to make your code readable
    • How to design your project
    • Using Subs and Functions to organize your code
    • Collections - A simple data structure
    • Putting it all together - the final code
    • Activity 2 (Project 2)
  • 9
    Module 8: Arrays - Practical Strategies for Effective Use
    • Why we need arrays
    • Getting started with arrays
    • Activity 1 (Arrays)
    • Practical uses of 1D Arrays 
    • Activity 2 (Arrays)
    • Replacing Ranges with 2D Arrays
    • Optimizing 2D Array Code
    • Activity 3 (Arrays)
    • Copying arrays - important considerations
  • 10
    Module 9: Real-World Data Manipulation Scenarios
    • Quick Guide to Main Data Manipulation Scenarios
    • Scenario 1: Filtering and copying
    • Activity 1 (Data Manipulation Scenarios)
    • Useful data structures: The Dictionary
    • Scenario 2A: Grouping data
    • Scenario 2B: Grouping with multiple fields
    • Activity 2 (Data Manipulation Scenarios)
    • Scenario 3: Joining data
    • Activity 3 (Data Manipulation Scenarios)
  • 11
    Module 10: Powerful Data Manipulation Tools
    • Introduction to Advanced Filter
    • Advanced Filter
    • Scenario 1 using Advanced Filter(Filter and Copy)
    • Activity 1 (Powerful Tools)
    • Introduction to ADO
    • ActiveX Data Objects(ADO)
    • Scenario 1 to 3 using ADO(Filter/Group/Join)
    • Activity 2 (Powerful Tools)
  • 12
    Module 11: Performance Optimization
    • A Note About This Section
    • Introduction to performance optimization
    • Optimization basics
    • Measuring performance
    • Activity 1 (Performance Optimization )
    • Performance Optimization Techniques
    • Optimization for Data Manipulation
    • Activity 2 (Performance Optimization )
  • 13
    Module 12: Handling User Interaction 
    • Introduction to User Interaction
    • Using buttons to run the code
    • Activity 1 (User Interaction)
    • Using Excel events to run code
    • Activity 2 (User Interaction)
    • Using the worksheet event in the real-world
    • Activity 3 (User Interaction)

Frequently Asked Questions

A once-off payment. You will only pay for this course once. You will never be asked to pay again no matter how much new content is added.

The Excel VBA Handbook teaches how to structure the code in an application and covers a lot of areas of Excel VBA. However, it doesn't go deep on topics like arrays etc. 

In this course, I get deep into topics like arrays, dictionaries and the various data manipulation techniques. 

From what I've seen, the majority of people are using Excel VBA to move data around in some capacity, and learning proper efficient methods is extremely beneficial to most Excel VBA users.

Absolutely 100% Yes. You can use the code however you like - personal or commercial. You can alter it any way you like.

You can post a question in any course lesson. I answer these questions promptly.

Once you have enrolled, you have ongoing access. The course is self-paced and you may take as long as you need to complete it.

This is a video-based course. It also includes activities to boost your learning as well as supplementary text where applicable. It also includes working code examples that you can use in your projects.

Then you can get a full refund within 15 days of purchase. No questions asked! Simply reply to your receipt email.

Get Started Today

Start writing Excel VBA like a pro using time-tested techniques.