Excel VBA Tutorials – Basics & Advanced

Home/Excel VBA Tutorials – Basics & Advanced

Excel VBA tutorials will help you to learn VBA from basics to advanced programming concepts. VBA stands for Visual Basic for Applications, a powerful programming available in the MS Office. You can start learning from this free tutorial based on your experience and expertise in VBA. If you are new to VBA, consider learning VBA from basics. You can skip the basic tutorials if you are already comfortable with basics.



50+ Project Management Templates Pack
Excel PowerPoint Word

Advanced Project Plan & Portfolio Template
Excel Template

Business Presentations Templates Pack
PowerPoint Slides

20+ Excel Project Management Pack
Excel Templates

20+ PowerPoint Project Management Pack
PowerPoint Templates

10+ MS Word Project Management Pack
Word Templates

excel vba

I have seen many of my friends wants to learn VBA because it saves lot of their time. They are starting learning VBA and they are discontinuing after few days. When I check with them, they are all finding VBA is difficult to learn. But the fact is they don’t have well organized materials to learn VBA and proper guidance to know where to start and which topics should cover first.

Here are Excel VBA Tutorials From Basics to Advanced Levels to learn Excel VBA, a powerful macro language for automating MS Office Applications and to do many more things. Our easy to follow step by step learning path will guide you to help you in mastering the VBA programming.

Excel VBA Learning Path

Excel VBA Learning Outcomes

  • Excel VBA Basic tutorials will help you getting started with the VBA
  • Excel VBA Programming tutorials will help you to learn VBA programming concepts to deal with excel objects
  • Excel VBA Advanced tutorials will help you to mastering VBA to deal with many advanced things using VBA
  • Excel VBA downloads will help you to open the code and see how each program is working practically
  • Learn Macros with Examples – 15 Basic Macros for Absolute Beginners, this is for beginners who want to learn Excel VBA by examples
  • 100+ Most Useful Excel VBA codes for Beginners and Advanced Users will show the code to do many different tasks using Excel VBA

Excel Macros and VBA for Beginners:

This section is for beginners with no knowledge of Excel Macros or VBA. By end of this session you will understand the Excel VBA environment and you will be able to Record and Run a Macros. And can write and edit basic macros to accept the inputs from the user and show the popup messages.

» Introduction to VBA:

Introduction to VBA
VBA is a programming language for MS Office Application, which stands for Visual Basic for Applications. It allows you to automate the task which you are doing manually and repeatedly. Most of the times, we do the same kind of tasks daily in our day to day work. You can automate such king of tasks using VBA.

» Getting Started with VBA:

In this session we will briefly discuss and see the different things which we are required to learn to Record Macros. The idea of this tutorial is to help you to get overall idea about Excel Macros. And what are the different things which we are going to cover in part of learning basic macro tutorials.

» VBA Environment:

VBA Environment-vbe
Concepts on VBA Integrated Development Environment help you to understand the Differth Components available in VBE. Such as VBA Editor, Project Explorer, Properties Window,etc…

» Recording a Macro

record macro in excel
The Macro Recorder is a very useful tool available in Microsoft Excel. You can record a Macro if you want to automate any repetitive task. It help you to save the process time and avoid the human errors. In this section you will learn how to record a macro to automate repetitive task.

» Writing Your First VBA Macro- Hello World!:

Hello World VBA- Writing Your First Macro
We will see how to write simple “Hello World!” macro. it is out first VBA Macro.

» Debugging VBA Code:

Debug Code in Excel VBA Code Programs
When you are writing the program you may want to to test whether particular statement is working fine. Debugging Code is the one of important task while writing programs in any computer language. It helps you in troubleshooting your code.

» Accepting Values (Input Box) & Popup Messages (Message Box):

We can show some Popup message to the user while executing the Macro using Message Box. Also, we can provide inputs to the macro when it is executing, it accept the values using Input Box. Generally we assign this value to a variable. In this section we will see how to use Input Box, Message Box and Variables.

» Modifying and Commenting Macros or VBA Code:

Macro recorder will produce lot more code than required, it store almost every action which you are performing after start recording the macro

» Executing a Macro:

Running Macro in Excel
We can execute a macro in many different ways, in this topic we will see how to execute a macro: From Macro Dialog and By assigning a short-cut key to the Macro

» Macro Security:

The Macro Security is provided to secure your data or PC from others or from the malicious programs. It is important to understand the macro security if you are dealing with the Macro Enabled Files. It helps to protect your data from the malicious programs and helps to know how to run the macros when its required.

» Learn Macros with Examples – 15 Basic Macros for Absolute Beginners:

Excel VBA Macros for Absolute Beginners - 15 Examples File download
Learning Basic Excel VBA By Examples is the easiest way to understand the basics of VBA to deal with Excel Objects, in this tutorial we will not covering any programming concepts, we will see how to access the different Excel Object using VBA.

Excel VBA Programming:

In this section you will learn the VBA programming from the basics to write your own VBA programs like sub routines, functions to automate your daily tasks. By end of this session you will be able to write the procedures and functions to automate tasks and you will find significant time saving while working with your projects.

» Getting Started with VBA Programming:

Welcome to VBA programming tutorials, In this session we will see overall objective of this course and brief introduction of the topic required to learn VBA programming. You will feel more confident and why we are learning a particular topic and what are the things we can do by understanding each topic.

» Understanding VBA Object Model:

Understanding VBA Objects Modelling
Understanding the VBA Object Model is important to deal with different Excel Objects. Objects are similar to the objects in real world. If you consider House is an object, it have several characteristics.

» Working with Excel Objects – Workbook, Sheets, Range and Cell:

Objects in Excel VBA - Workbook, Sheets, Range and Cell
We have seen different Objects in the previous tutorial, we will see the different examples on Workbook, Sheets, Range and Cell objects in this session.

» Variables and Data Types:

Variables can store the information required to use in our programming. When we are working with data we deal with different type of data,so we need required different types of variables to store the data. In this session will discuss how to declare a variable and different types of variables available in VBA.

» Operators and Operands:

We we are doing anything with one are more values is called an operation or task. To perform any operation we required minimum one symbol and one Variable or Value. The symbol is called an Operator and the Variable or Value is called an Operand.

» Conditional Statements:

Conditional statements are very useful in any programming, this will give you to perform comparisons to decide or loop through certain number of iterations based on a criteria. In this tutorial we will learn the conditional statements with examples.

» Sub Procedures:

A sub procedure in VBA is a procedure that performs a specific task.Sub procedures are generally used to accept input from the user and do required action and then print the results.

Advanced VBA Programming:

This section is for advanced programmers who are comfortable with the above concepts. In this section you will learn how to develop the Forms and interact with the other applications, handling the files and other advanced programming concepts. By end of this sessions you will be comfortable with VBA and be confident to develop the tools to automate complex tasks and complex Dashboards.

» Scope of the Variables:

Scope of Variables in Excel VBAWhen we are working with variables, it is important to understand the Scope of a Variable. The Scope describes the the accessibility or life time or visibility of a variable.

» Passing Arguments:

Passing Arguments in Excel VBAWe write the procedures to perform certain tasks and some times we may required to write another procedure with small variations. In this situation we can take advantage of the Passing Arguments.

» Arrays:

Arrays in Excel VBAWhen we work with one item we required to use one variable, if you want work with more than one item, we can go for arrays. Arrays are the variables which allow us to store more than one value.

» Introduction to Collections:

Collections in Excel VBACollection is an object contains group of objects having similar characteristics (with same properties and methods). For example,if you want to loop through all worksheets in a workbook, you can refer worksheets collection of the workbook and do whatever you want to do with that particular worksheet.

» UserForms and Controls:

userform-ToolBarAny Windows Application is equipped with set of objects called windows controls. The Main control is called a Form, it is the primary window contains different types of controls which allow user to interact with the computer.

» Events:

Events in Excel VBA- examples 2Event programming is the most useful tool which helps to monitor specific user actions within Excel. For example, if the user Opening a Workbook, Selects a Worksheet, enters data into a Cell, or saves a Workbook, these actions are all Excel Events.

» Objects, Properties and Methods:

Most of the programming languages today are Object Based Or Object Oriented Programming Languages. Although Excel VBA is not a truly object oriented programming language, it does deal with objects.

» VBA Security:

vba-security-2It is important to understand the macro security if you are dealing with the Macro Enabled Files. It helps to protect your data from the malicious programs and helps to know how to run the macros when its required.

» Introduction to ADO and SQL – Connecting to a database with VBA:

ADO in Excel VBA - Connecting to a database using SQL -example-1DO Stands for ActiveX Data Objects, is Microsoft’s Client-Server technology to access the data between Client and Server. ADO can’t access the data source directly, it will take help of OLE DB Provider to communicate with the data source. Most of the times OLE DB providers are specific to a particular Data Source Type. However, we have an OLE DB provider for ODBC, it is a general purpose provider with help of this ADO can access any Data source which can understand ODBC.

» Interacting with Other Applications:

Interacting with Other Applications using VBAYes, we can interact with the other Applications using VBA,i.e; with the MS Office Applications like Word, PowerPoint,Outlook,etc… and other applications like Internet Explorer, SAS,etc…
to do this first we need to establish a connection with those applications, then we can able to access objects of the other applications from VBA.

Useful Links and downloads:

Learn Macros with Examples – 15 Basic Macros for Absolute Beginners

Learning Basic Excel VBA By Examples is the easiest way to understand the basics of VBA to deal with Excel Objects, in this tutorial we will not covering any programming concepts, we will see how to access the different Excel Object using VBA.

Download the Example File Here:

mongopono.ru – 15 Examples VBA Codes for Bigenners

For more Example Codes Refer:

Most Useful Excel VBA Tips (100+ Most useful VBA Codes)

Useful Links:



  1. Dominique May 19, 2014 at 1:44 PM - Reply

    Thanks a lot for the reference

  2. R VIJAYAKUMAR August 24, 2014 at 12:55 PM - Reply

    Though I have been using Excel for quite some years, I have formal exposure to VBA until recently. In the last couple of months, I have gone through the tutorials available in some other websites and able to write some simple VBA codes. This site, just a couple of days before I found out, appears very interesting and I would like to study the tutorials authored by you. Before proceeding, I would like to whether any changes in the tutorials would be required for Excel 2013 wherein the interface has been totally changed. I am sure there might not be any changes in the VBA coding but I may face problems while handling ribbon interface. Please Clarify. Regards.

  3. R VIJAYAKUMAR August 30, 2014 at 7:43 PM - Reply

    It is very interesting to go through your tutorials on this site. I am a beginner as far as VBA is concerned although I have been using excel for more than a decade. What I would like to know is whether VBA is capable of handling all sorts of business problems programmatically as I hear there are plenty of limitations to it. Request your clarifications and advise.

  4. Vasu December 9, 2014 at 7:12 PM - Reply


    Many times I have registered for the VBA programming course which starts from 12th of December month, After submitting my email thought it says as message sent, But I don’t fine any email to my mailbox. Please suggest me how can I enroll to VBA programming turorial and how is the learning module.


  5. Kranti January 17, 2017 at 5:51 PM - Reply

    Excellent Tutorial, Thanks for the Author.

    Kranti Akula

Leave A Comment

Related pages

what is hlookup in excel used forexcel macro remove duplicatesexcel vba filter rangehow to make pivot tables in excel 2007vba if statementsupdate hyperlinks in excellistbox columnexcel formulas for analystssendmail command examplevba nullword activex controlsunlock excel sheetextract data from excel using vbavba applicationsshort key to insert row in excelhow to use the sumif functionexcel expert tutorial pdfconstruction schedule excel templatevlookup excel vbaexcel vba write to text fileproject management tracking templatesexcel unlock password protected sheetfile handling in vb6vba check file existsexcel hyperlinkstemplate checklist excelexcel vba compare two worksheetsfresher interview questions and answersautorun macro excelaccess vba filesystemobjectexcel vba dynamic arrayexcel 2010 unhide column adefinition of vlookup functiondo while loop in vbavba application displayalertsvba export excelcoding worksheetshow to delete macrosexcel 2007 pivot chartlearn to write macros in excelsas coding for beginnershow to use average function in excel 2007vba closeexcel formula to copy cell valuepivot table chart excelexcel vba cells.findmessagebox vbaexcel to kml macroabsolute reference excel shortcutuseful macros for excelvba code to open a fileexcel create macroleft function in vbavba scrollbarvlookup with sumapplication defined error vbavb 6.0 interview questions and answers pdfbasics of excel vbaexcel vba vlookup exampledata analyst interview questions and answers pdfmacro in excel 2007 tutorialvba variant typecell reference vbapivot table basicshow to unhide multiple rows in excelhow to hide cells in excelloffset excel vbahow to expand cells in excelchange width of column in excel 2010excel 2003 gantt chart template