Excel VBA: Spreadsheet Automation
Duration: 2-Day
Public Course Price:
Training Formats: Public Classroom, Public Online, Private Course
Certification on Completion
Tired of doing the same tasks over and over in Excel?
Our Excel VBA: Spreadsheet Automation course gives you the power to take control of your spreadsheets and streamline the way you work.

You'll learn how to automate repetitive tasks, reduce manual errors, and create custom tools that save time and boost productivity.
This hands-on course is designed for confident Excel users ready to unlock the full potential of VBA. By the end of the course, you’ll be building your own time-saving solutions.
Course Objectives
By the end of this course, you’ll be able to:
-
Record and adapt macros to automate repetitive tasks
-
Navigate the Visual Basic Editor with confidence
-
Write and structure clear, purposeful VBA code
-
Use variables, loops and logic to build flexible procedures
-
Create user-friendly forms and controls
-
Build practical tools that reduce errors and save time
Who Is This Course For?
This Course is Ideal For:
-
Excel users ready to automate and enhance their spreadsheets
-
Professionals responsible for large or repetitive Excel tasks
-
Anyone looking to build custom solutions without relying solely on formulas
Prerequisites: You’ll need strong Excel skills, ideally at Intermediate/Advanced level. Previous knowledge of PivotTables, formulas, and workbook structures is assumed.
Course Outline
Understand The Power of VBA
-
Understanding what VBA can help you achieve
-
Exploring common use cases and workflow improvements
-
Recap of Excel features that pair well with VBA
-
Clarifying your automation goals
Recording Macros
-
Recording simple and relative macros
-
Running and modifying recorded macros
-
Understanding macro recording limitations
Visual Basic Editor
-
Navigating the Project Explorer and Properties Window
-
Creating, importing, and exporting modules
-
Setting breakpoints and stepping through procedures
Understanding VBA
-
Using the Immediate Window and Object Browser
-
Working with Excel object collections
-
Setting and manipulating property values
Procedures & Editing Code
-
Creating and running procedures
-
Making sense of IntelliSense
-
Commenting, indenting, and organising code
Excel Object Model
-
Working with Workbook, Worksheet, and Range objects
-
Referencing and manipulating data using VBA
Using Variables & Arrays
-
Declaring variables and understanding scope
-
Passing variables between procedures
-
Working with arrays and data structures
Programming Techniques
-
Communicating with users via input boxes
-
Writing IF statements and loops
-
Applying consistent programming conventions
Creating Custom Forms
-
Designing forms with labels, buttons, and combo boxes
-
Setting properties and controlling form layout
-
Programming form behaviour and user interactions
Error Handling & Automation
-
Creating error handling routines
-
Running macros automatically on workbook events
-
Embedding forms and macros into real workflows
Reflections & Planning
-
Recap the VBA techniques that can improve efficiency and automate tasks
-
Identify opportunities to apply macros, procedures, and forms in your own work
-
Plan next steps for building confidence with code, error handling, and best practices
Why Choose SquareOne Training?
4.9/5 Rated
Trusted by over 6000+ learners for practical, hands-on training.
Worldwide Expert Trainers
Delivering onsite and online training across the UK, Europe and the US.
Award-Winning Training
Over 30 years’ experience and winner of multiple industry awards.
What Our Learners Say
Training Formats
We specialise in private and tailored training – delivered onsite, online or at your premises.
Flexible dates and group discounts are available for team bookings.
Prefer to join a public course? See upcoming dates below.
Public Course Dates
Call us for more availability and options 0151 650 6907.
Ready to Get Started?
Tell us what you’re looking for and we’ll help you book or create the perfect training solution.
"*" indicates required fields
