Programming in VBA - Using Microsoft Excel

Course Description

The skills and knowledge acquired in this course are sufficient to be able to create real life working VBA applications within Excel. The learner will be able to work with VBA within the Excel environment to program and automate worksheet operations. Users of Excel up to Office 365 can be facilitated.
1 day
Contact us for pricing


This course assumes the learner has a strong knowledge of working with Excel to high Intermediate or Advanced level.

Learning Outcomes

Learning Outcomes At the completion of this course the learner should be able to:
- create recorded macros in Excel
- use the macro recorder to create a variety of macros
- understand the Excel object model and VBA concepts
- work effectively with the main features of the VBA Editor window
- create procedures in VBA
- create and use variables
- create and work with user-defined functions in VBA
- write code to manipulate Excel objects
- use a range of common programming techniques
- create a custom form complete with an assortment of controls
- create code to drive a user form
- create procedures that start automatically
- write a variety of error handling routines

Understanding Excel VBA

Programming In Microsoft Excel
VBA Terminology
Understanding Objects
Viewing The Excel Object Model
Using The Immediate Window
Working With Object Collections
Setting Property Values
Working With Worksheets
Using The Object Browser
Programming With The Object Browser
The Best VBA Help Available

The VBA Editor

The VBA Editor Screen
Opening And Closing The Editor
Using The Project Explorer
Working With The Properties Window
Using The Work Area
Viewing Other Panes
Working With Toolbars
Working With A Code Module
Running Code From The Editor
Setting Breakpoints In Code
Stepping Through Code


Understanding Procedures
Where Procedures Live
Creating A New Sub Routine
Making Sense Of IntelliSense
Using The Edit Toolbar
Commenting Statements
Indenting Code
Bookmarking In Procedures

Using Variables

Understanding Variables
Creating And Using Variables
Explicit Declarations
The Scope Of Variables
Procedure Level Scoping
Module Level Scoping
Passing Variables
Passing Variables By Reference
Passing Variables By Value
Data Types For Variables
Declaring Data Types
Using Arrays

Functions In VBA

Understanding Functions
Creating VBA Functions
Using A VBA Function In A Worksheet
Setting Function Data Types
Using Multiple Arguments
Modifying A VBA Function
Creating A Function Library
Referencing A Function Library
Importing A VBA Module
Using A Function In VBA Code

Using Excel Objects

The Application Object
The Workbook Objects
Program Testing With The Editor
Using Workbook Objects
The Worksheets Object
Using The Worksheets Object
The Range Object
Using Range Objects
Using Objects In A Procedure

Programming Techniques

The MsgBox Function
Using MsgBox
InputBox Techniques
Using The InputBox Function
Using The InputBox Method
The IF Statement
Using IF For Single Conditions
Using IF For Multiple Conditions
The Select Case Statement
Using The Select Case Statement
For Loops
Looping With Specified Iterations
The Do�Loop Statement
Looping With Unknown Iterations

Creating Custom Forms

Understanding VBA Forms
Creating A Custom Form
Adding Text Boxes To A Form
Changing Text Box Control Properties
Adding Label Controls To A Form
Adding A Combo Box Control
Adding Option Buttons
Adding Command Buttons
Running A Custom Form

Programming UserForms

Handling Form Events
Initialising A Form
Closing A Form
Transferring Data From A Form
Running Form Procedures
Creating Error Checking Procedures
Running A Form From A Procedure
Running A Form From The Toolbar

Automatic Startup

Programming Automatic Procedures
Running Automatic Procedures
Automatically Starting A Workbook

Error Handling

Understanding Error Types
The On Error Statement
Simple Error Trapping
Using The Resume Statement
Using Decision Structures In Error Handlers
Working With Err Object
Error Handling In Forms
Coding Error Handling In Forms
Defining Custom Errors

ExcelExcel MacroExcel Macro ProgrammingExcel VBAMicrosoft ExcelMS ExcelVisual Basic for ApplicationsExcel 365Office 365Advanced ExcelDashboard ReportingExcel DashboardsMicrosoft ExcelMicrosoft ExcelMS ExcelExcel 365Excel 2021Microsoft Excel 2021