Learn Excel VBA Programming & Macros (Free Tutorial – Step by Step)

Get FREE Advanced Excel Exercises with Solutions!

This is a complete guide on Excel VBA. If you’re a beginner user of Excel VBA, you will get your best start here. If you’re using Excel VBA for the long term, there is also something for you.

This blog post lists all the step-by-step free tutorials on Excel VBA programming, the 2 most popular Excel VBA courses, and some necessary books.

“Why I need to learn Excel VBA!” – you might ask yourself.

Let’s start with a personal example…

Some months ago, in a Facebook group, someone asked for help. He wanted to create a system with the following criteria:

  1. The person will order his workbook to create any number of worksheets (the number might be 50, 60 or 100 or any number),
  2. Then, he will provide the name patterns for the worksheets,
  3. And all the above things will be done with just one click.

I helped him out. I wrote a macro for his workbook, he ran it, and with just one click he can now do all those things. Excel does not provide any way to do the above things. You have to write code, you have to work with Excel VBA.

How to Learn Excel VBA (My Answer on Quora)

You know about Quora where experts answer different types of questions.

There was a question on Quora like this one: What is a good way to learn and code VBA? 

I answered the question with my experience, and so far 933 people viewed the answer and I got 3 upvotes. See the images below and know my way of how I command over any programming language.

How to learn Excel VBA

My Quora answer Part 1

How to learn Excel VBA

My Quora answer Part 2

Learn Excel VBA with My Free Tutorials (Step by Step)

I am gathering here all the step-by-step tutorials that I wrote to help you learn Excel VBA. Just read the articles one by one and do a little practice. That’s all.

If you don’t have any prior experience in coding, frankly speaking, the topics might seem to you a little bit complex. But believe me, if you keep yourself stuck with these materials, you will find it easy and you will start capturing the concepts of programming. Just stuck with these tutorials!

Introducing VBA (Visual Basic for Applications)

  1. Introduction to VBA Macros.
  2. What You Can Do with VBA (6 Practical Uses).
  3. How to Display Developer Tab on the Ribbon in Excel.
  4. About Macro Security in Excel.
  5. How to Make a Macro Enabled Workbook in Excel (3 Simple Ways).
  6. Types of VBA Macros in Excel (A Quick Guide).
  7. How to create VBA Macros in Excel using Macro Recorder.
  8. Recording Macro in Excel – Learn with an Example.
  9. How to Assign Macro to Button in Excel (2 Easy Methods).
  10. Excel Macro Shortcut Key (2 Suitable Ways).
  11. How to add a macro to your Quick Access toolbar in Excel.
  12. How to Use Relative Reference in Excel Macro (with Easy Steps).
  13. How to Save Macro in Excel (with Easy Steps).
  14. Excel VBA Coding Tips.
  15. How to Use VBA Modules in Excel (8 Simple Ways)
  16. List of 10 Mostly Used Excel VBA Objects (Attributes & Examples).
  17. How to Use VBA Conditional Statements in Excel (4 Examples).
  18. 22 Macro Examples in Excel VBA.
  19. How to Use For Next Loop in Excel VBA (with 5 Examples).
  20. Differences Between Subroutine & Function in Excel VBA.

Create Your Own Custom Functions

  1. How to Create Custom VBA functions and Use them in the Worksheet.
  2. How to Execute VBA Function Procedure in Excel (2 Easy Ways).
  3. How to Use VBA Function Procedure with Arguments in Excel.
  4. What Are Excel Function Arguments (A Detailed Discussion).
  5. How to Use VBA User Defined Function (4 Suitable Examples)
  6. How to Make VBA Function with Arguments in Excel.
  7. How to Use VBA Average Function in Excel (4 Practical Examples).
  8. How to Create VBA Custom Function in Excel (2 Easy Methods)

Creating Excel UserForms

  1. How to Use Excel VBA Userform (2 Suitable Examples).
  2. How to Use MsgBox and InputBox in VBA Excel.
  3. How to Create a UserForm: an Overview.
  4. How to create an Excel VBA UserForm.
  5. Excel VBA to Change Case of Selected Text (6 Useful Examples).
  6. Adding accelerator keys & Controlling tab order in Excel UserForms.

Working with UserForm Controls in a Worksheet

  1. Excel Form Control vs. ActiveX Control (7 Differences)
  2. How to Use Activex Control in Excel (With Easy Steps)
  3. Excel ActiveX Controls Properties (Checkbox, Combo box, List box, …)

Working with Excel Events

  1. What are Excel Events and Their Types?
  2. How to Use VBA Event Handler (5 Relevant Examples).
  3. Excel VBA: Workbook Level Events and Their Uses.
  4. Excel VBA Worksheet Events and Their Uses.
  5. How to Use VBA OnKey Event in Excel (with Suitable Examples).

If you follow the above tutorials step by step, you will be able to make any complicated project using Excel VBA. Just you have to do a little practice.

Learn Excel VBA with Online Courses

Daniel’s YouTube Channel (For those who intend to learn Excel VBA for free)

If you see videos regularly on YouTube to learn Excel VBA, then you know about this YouTube channel.

This channel is run by Daniel Strong. He has enriched his channel with a huge number of video tutorials on Excel VBA. Whatever your problem is, you will get a solution with this YouTube channel.

The Ultimate Excel Programmer Course by Daniel

Studies confirm that visuals are processed 60,000X faster in the brain than text.

If you’re a newbie to Excel VBA, I suggest you go with a video course.

It is true that there are plenty of free videos are there on YouTube on Excel VBA, but what you need is a true guide who will start from basic, keep you engaged and on track with lessons, quizzes, and other essential materials.

Daniel also runs a popular course on Excel VBA at Udemy platform, the world’s largest platform for online courses.

Get Daniel’s Ultimate Excel Programming Course!

The Ultimate Excel Programmer Course.

What are you going to get from this course?

  • Automate and Customize data entry forms
  • Choose the right Loop for each task
  • Master the CELLS and RANGE objects in multiple scenarios
  • Create multiple Variable styles to match your need
  • Customize your VBA Editor and Understand all the Toolbars and options
  • Debug and Troubleshoot code like a boss!
  • Record, Modify or Write Macros from scratch
  • Make Custom Formulas/Functions on the fly
  • And many other topics
Excel VBA Course

Daniel’s Excel VBA Course on Udemy

When I am writing this post, the course has 30,438 students and the average rating of 318 students is 4.7.

Here are some reviews of the course…

Excel VBA Course Reviews

Daniel’s course reviews

Ultimate Excel VBA Course by Mark

After I have joined Udemy as an instructor, I was following Mark Talbert’s this course (Ultimate Excel VBA). I had a plan to take a course on Excel VBA. But after seeing the popularity of Mark’s course, I refrained myself from making the course.

Mark has been using Excel since version 1.0. And here are some reviews in his course.

Udemy reviews are 100% genuine and trustworthy; computer bot automatically removes the manipulated reviews from the courses!
Ultimate Excel VBA

Reviews in Mark Talbert’s Course (Ultimate Excel VBA)

Get Mark’s Ultimate Excel VBA Course!

Ultimate Excel VBA

What are you going to get from this course?


Best Excel VBA Books

In an age of online information, it seems that the appeal of books to readers has deteriorated. Started writing a VBA code and did forget the syntax of a constructor? Just go to Google and convert your problems in some phrases and hit Enter. You’re all done.

Millions of results will appear to you immediately.

Searching in a book for some problems? OK. It will take time. Go to the Index page, then count a, b, c, d, find out your relevant topic, go to that page, and get an idea of your findings.

A long-term process really and there is no guarantee that you will find your problem topic in your book.

Then why every expert says that you need a book on your topic?

My advice is the same for you.

You need one or two books in Excel VBA. It might be in PDF or it can be a hardcover book (preferable).

When you will enroll in an online course on Excel VBA (or on any topic), it is true that you will learn almost all the topics within the shortest possible time.

But a video course can be compared with a regular classroom where your instructor just gives you a general view of the topics. You then go home, open the book, and read the topics that you have learned in your classes and do some practice problems. And you’re all done.

So, still, at this age of quick information, a book is an inevitable asset at your table.

Here, I will give you a list of a total of 3 books that you can consider buying. These books are really helpful and the readers have shown their high gratitude to the authors of these books through reviews.

Read More: 6 Best Excel VBA Programming Books (For Beginners & Advanced Users)

Excel 2013 Power Programming with VBA

The author of this book is John Walkenbach and this the best seller book on Excel VBA. John Walkenbach doesn’t need any introduction to the Excel users.

He is known as Excel GUY and if this is your first day of introduction to Microsoft Excel, you may have heard his name.

Buy the book from Amazon!

Professional Excel Development: The Definitive Guide to Developing Applications Using Microsoft Excel, VBA, and .NET (2nd Edition)

After you have read the general syntax and structures of Excel VBA, what you may need is to develop applications using Excel, VBA, and .NET.

This is the book that is written keeping in mind the application developers.

Just buy it and after reading some chapters, you will think you should read this book 15 years ago.

Buy the book from Amazon!

Financial Modeling (MIT Press) Fourth Edition

This is not a book on Excel VBA.

But when you’re working on Excel VBA intensively, I guess that you’re in the finance sector and your job may be related to building financial models for your company.

The write of this book is Simon Benninga. He is considered as the father of financial modeling.

Buy the book from Amazon!

Wrapping Up

I hope I could give you an outline of how to be a master in Excel VBA.

Here is a quick summary of this post:

  1. You got my answer on Quora on How to learn Excel VBA.
  2. Then you got the step-by-step tutorials to learn Excel VBA completely.
  3. I have introduced you to Daniel’s YouTube channel and his course on Udemy where you will get thousands of videos on Excel VBA.
  4. Then I have provided you an Excel VBA pdf where you can get 1200+ Excel VBA code snippets.

If you have any suggestions or feedback on how can I make this post more helpful to you, please provide it in the comments box.

Happy Excel Programming 🙂

Related Articles

Khan Muhammad Kawser
Khan Muhammad Kawser

Hello! Welcome to my Excel blog! It took me some time to be a fan of Excel. But now I am a die-hard fan of MS Excel. I learn new ways of doing things with Excel and share them here. Not only a how-to guide on Excel, but you will get also topics on Finance, Statistics, Data Analysis, and BI. Stay tuned! You can check out my courses at Udemy: udemy.com/user/exceldemy/

  1. Excellent tutorials. so easy to follow and learn. simple way of teaching. Thanks

  2. Mohammed Hussain,
    Thanks for the comments 🙂

  3. I have a database in one folder. Plz Unzip and see all excel files shown datewise. Can anyone help me in extracting day wise data of parameters in format shown in Monthly tracker sheet.
    Please check the format. It should be like if i select one workbook data from only that one will be extracted, if selected 2 data from one and two both so on and so forth till 31 days. i am uploading the the database and monthly tracker.

    please help …. iam in urgent need…
    thanks in advance
    plz tell where to post the database zip file

    • Praveen,
      Would you please mail me the database and other resources using the mail in the contact me page?

  4. I’m interested in Daniel’s course for $10, but when I click the link it comes up as $80. Is there a coupon code I need to enter to discount it to the advertised $10 price by Aug. 30?

    • Cindy,
      Millions of thanks for correcting me. It was a grand mistake. Sorry for that. You can buy the course now for just $10 using the above link.
      Best regards

  5. Same situation here, a wanted to buy the The Ultimate Excel Programmer Course. but the coupon expired.

    is there any way to have it back?


    • Reply
      Roger Gruenenfelder Nov 20, 2016 at 7:56 PM

      Good day Kawser. I like to download the “1200+ Excel VBA Code Snippets”.
      If I click the button it forwards me to “subscribe to my blog and get the …….”
      Since I am all ready a subscriber of your blog and don’t like to subscribe again : Where I can access this or even other useful PDF’s and “Tons of Excel Recsources” ?
      Thanks for info.. Regards Roger

  6. Reply
    Hemambaradhara rao Nov 23, 2016 at 10:52 AM

    Sir, I am a mail subscriber to your blog. How will i download Learn Excel VBA Programming & Macros [Free Tutorials, Download PDF & Course]

  7. Dear Sir,
    I want spin button in my excel sheet to change the items like mango, banana, pattato, ice, tree, cow etc…(it is for teaching in the school)..there are 50 to 55 items ………but it should change in the particular cell not in combobox……..because i have to give the value of that cell to another cell……so will you help me to do this for me……….Please sir ………and please give me the link to my mail id i.e. [email protected] ……………………please sir

  8. Good morning, I have created a worksheet with columns A through AB. Some columns contain the formulas needed for processing the information that is input and these are summed at the bottom of the columns. Three columns contain checkboxes which are used to activate a particluar column for a calculation. The checkboxes begin on row 3 and exist in column B, C and D. The checkboxes are linked to their respective row in columns Z, AA and AB which is used to test for the state of the checkbox. Periodically, the number of rows with the same layout has to be increased a larger amount of data. I have been trying to find a VBA solution that after clicking a button on the worksheet, a new row is added with all of the relevant formulas and link the 3 checkboxes to the new row at columns A, AA and AB. Since I just discovered your site, am in the process of reading through your material but there is just so much of it and am in need of this solution right away. Can you help?

  9. Dear Sir,

    Would you please advise how can I exclude specific cells from range copying in VBA?

    For example, how to copy data in Cell No. A1 and A4 (without copying data in A2 and A3)?

    A1 Value 1
    A2 Value 2
    A3 Value 3
    A4 Value 4

    Thanks in advance

    Kind regards,
    Mohamed Aref

  10. Good day Kawser. I like to download the “1200+ Excel VBA Code Snippets”.
    If I click the button it forwards me to “subscribe to my blog. I checked my email but nothing came through. I am already a subscriber


Leave a reply

Advanced Excel Exercises with Solutions PDF