Microsoft Excel Macros & VBA Training Course

Our Excel Macros & VBA Course brings you up another step by giving you the ability to build your own macros and to write simple Visual Basic code. This course covers the following items:

  • Record and edit macros
  • Understand the Object Model
  • Write Visual Basic routines
  • Reuse & adapt existing code

Booking for one?

Are you looking for a public course? Browse our list of public events and book today. 

Tell us about your project

Course Duration

Course can be either one day or two and a half-days duration


Course Objectives

After completing this course you will be able to record, edit and troubleshoot macros, understand the Excel Object Model, write manually simple programming routines in the Visual Basic Editor (VBE) environment as well as reuse and adapt existing code.

Who is this Course for

This Excel Macros and VBA course is for existing Excel users with a good understanding of Excel features who need to be able to automate a variety of tasks. Note: Unfortunately, Mac users can no longer programme using VBA.

Course Prerequisites

Familiarity with Excel at the intermediate level is sufficient. No prior knowledge of programming is required to attend this Excel Macros & VBA course.


Course Outline

Click on the headings below for more information on course topics:

Macros and Visual Basic

The Power of Excel:

Knowing Your Tools:
The Developer Tab / Macro Toolbar
Macro Security
Adding a Trusted Location
Overview of Recording, Storing, and Running a Macro
Understanding the VB Editor

Recording Macro Basics

Examining Recorded Macro Code:

Using the VB Editor and Help
Optional Parameters
Defined Constants
Properties Can Return Objects
Using Debugging Tools to Figure Out Recorded Code

Referring to Ranges with Excel VBA


The Range Object
Named Ranges
Use the Cells Property to Select a Range
Using the Cells Property in the Range Property
Use the Offset Property to Refer to a Range
Use the Resize Property to Change the Size of a Range
Use the CurrentRegion Property to Select a Data Range

User-Defined Functions in Excel VBA


Creating User-Defined Functions
Useful Custom Excel Functions

Looping and Flow Control in Excel VBA

Looping and Flow Control:

Using Variables in the For Statement
Variations on the For…Next Loop
Exiting a Loop Early After a Condition Is Met
Nesting One Loop Inside Another Loop
VBA Loop: For Each
VBA Loop : Do Loops
Flow Control: Using If…Then…Else
Flow Control: Using Select Case

Event Programming in Excel VBA

Event Programming:

Levels of Events
Using Events
Event Parameters
Enabling Events
Workbook Events
Worksheet Events

UserForms in Excel VBA

Userforms in Excel:

Input Boxes
Message Boxes
Programming the Userform
Userform Events
Programming Controls
Using Basic Form Controls