Public Schedule Face-to-Face & Online Instructor-Led Training - View dates & book

Instructor-led training - vba training courses

Excel VBA Advanced Training CoursesExcel VBA Advanced Training Courses

Face to face / Online public schedule & onsite training. Restaurant lunch included at STL venues.

Designed for Excel 365

From £595 List price £695

Learn Advanced Visual Basic

Who is this course for?

This course is aimed at individuals with a basic grounding in Excel VBA and an advanced knowledge of Microsoft Excel, who wish to develop their skills with introduce more sophisticated automation into their workflows.

Prerequisites

Attendance of our Microsoft Excel VBA course, or equivalent knowledge.

Including the understanding of the following:


  • Variable types
  • Using object variables to represent worksheets and workbooks
  • Using count based (For-Next) and conditional based (Do-Until, Do-While) loops
  • If-Then-Else-End If and Select Case statements
  • With blocks
  • Using Range and Cells objects

Benefits


  • Upon completion of the course delegates will have a good understanding of the major components of VBA.
  • Delegates will expand their reach by being able to use VBA to communicate with other Office applications, such as Word and Outlook
  • The course will give the delegates a good understanding of how arrays can be used to handle large datasets, optimising VBA codes and execution speed.

Course Syllabus

The Excel Object Model

Exploring the Range object in detail
The versatile CurrentRegion object
Working with collections of Workbooks and Worksheets

Arrays

Efficient variable storage with arrays
Array optimisation
Dynamic arrays
The Array function

Triggers and Events

Running macros automatically
Executing macros on a timer
Associating macros with other Workbook events

PivotTables & Charts

Manipulating Charts through VBA
Manipulating PivotTables through VBA

Linking with Office

Connecting to other Office applications
Working with other Office application

"What do I get on the day?"

Arguably, the most experienced and highest motivated trainers.

Face-to-face training

lunch

Training is held in our modern, comfortable, air-conditioned suites.

Modern-spec IT, fully networked with internet access

Lunch, breaks and timing

A hot lunch is provided at local restaurants near our venues:

  • Bloomsbury
  • Limehouse

Courses start at 9:30am.

Please aim to be with us for 9:15am.

Browse the sample menus and view joining information (how to get to our venues).

Refreshments

Available throughout the day:

  • Hot beverages
  • Clean, filtered water
  • Biscuits

Online training

online training (virtual)

Regular breaks throughout the day.

Learning tools

in-course handbook

In-course handbook

Contains unit objectives, exercises and space to write notes

Reference material

Available online. 100+ pages with step-by-step instructions

24 months access to Microsoft trainers

Your questions answered on our support forum.

What to expect when training

Training Formats & Services

  • On a public schedule at one of our
    London training venues.
  • On-site at your company office UK wide
  • Near-site, at a location close to you
  • Tailored courses to your requirements
  • Productivity Training Programs
  • Consultancy
  • Bespoke one-to-one
  • Rollout
  • TNA
  • Upgrade
  • Case studies

Summary

Palletforce plc

gravatar


Senior Business Analyst

A very good course and I found many, very useful tips and tricks as well as the course main content.

Equifax

gravatar

Jennifer Atherton,
Analyst

Happy with the course, I have no improvements.
However, we use quarterly reports which use data to generate charts - could have been useful to work through (although we are self taught on how to do these)

Delphi Diesel Systems

gravatar

Fabio Toyama,
Development Engineer

I'm very satisfied with the course. Just at the right pace and expected level.
The instructor showed great knowledge and experience on the subject.

More testimonials

Public schedule dates

Next date Location Price
Thu 1 OctLimehouse £595
Wed 21 OctOnline£595
Fri 30 OctBloomsbury £595
Fri 20 NovOnline£595
Mon 30 NovLimehouse £595
Mon 21 DecOnline£595

And 25 more dates...

Loading...

Loading content...

TrustPilot

star star star star star Excellent

Resources

Blog

Tutorials and discussions on MS Office

Hints & Tips

MS Office tips to save you time

Cheat sheets

MS Office shortcut keys for all versions

Infographics

Handy info on industry trends

Subscribe

Latest news & offers

Promotions

Latest Feedback

  • 98.20% customer recommendation
  • 99.33% training objectives met
  • 237,533 delegates trained
  • 14,821 organisations trained

Latest X / Tweet

  • Our Engaging #NegotiationSkills course is helping professionals handle complex conversations with confidence ✅ Big shout‑out to Hazel for delivering high‑impact training. Support continues via our 2‑year forum 📈 #feedback #ProfessionalDpic.x.com/zwSaDgtLun/zwSaDgtLun
Loading...

Loading content...

Free manuals

We are providing a range of our course manuals free of charge.

Why not share this resource with your friends and colleagues?

Training manual sample

Below are some extracts from our Excel training manuals.

Ranges That Do More

The Excel Object Model

The Excel Object Model is a hierarchical structure of objects that you can use to interact with Excel. At the top is the Application object, representing the entire Excel application. Below it, you have objects like Workbooks, Worksheets, Ranges, and many others.

Exploring the Range Object in Detail

The Range object is one of the most commonly used objects in Excel VBA. It represents a cell, a row, a column, or a selection of cells containing one or more contiguous blocks of cells. Here are some key properties and methods:

Properties:

.Value: Gets or sets the value of the range.

.Address: Returns the address of the range.

.Rows and .Columns: Return the rows and columns within the range.

Methods:

.Select: Selects the range.

.Copy and .PasteSpecial: Copy and paste the range.

.Clear: Clears the contents of the range.

Example:

Sub ExampleRange()

   Dim rng As Range

   Set rng = ThisWorkbook.Sheets('Sheet1').Range('A1:B2')

   rng.Value = 'Hello, World!'

End Sub

Events That Fire Automatically

Triggers and Events in Excel VBA

Events in VBA are actions that occur in Excel, which can trigger the execution of a macro. For example, opening a workbook, changing a cell, or clicking a button are all events. You can write VBA code to respond to these events.

Running Macros Automatically

To run macros automatically, you can use workbook or worksheet events. Here are a few examples:

Workbook_Open Event: This event triggers when the workbook is opened.

Private Sub Workbook_Open()

   MsgBox 'Welcome to the workbook!'

End Sub

Place this code in the ThisWorkbook module. When the workbook opens, a message box will appear.

Worksheet_Change Event: This event triggers when a cell value changes.

Private Sub Worksheet_Change(ByVal Target As Range)

   If Target.Address = '$A$1' Then

       MsgBox 'Cell A1 has changed!'

   End If

End Sub

Place this code in the worksheet module. When the value in cell A1 changes, a message box will appear.

PivotTables in Code

Manipulating PivotTables through VBA

Creating a PivotTable:

Here’s a simple example of how to create a PivotTable from a data range in your active worksheet:

Sub CreatePivotTable()

   Dim sht As Worksheet

   Dim pvtCache As PivotCache

   Dim pvt As PivotTable

   Dim SrcData As String

   Dim StartPvt As String

   ' Define the data range

   SrcData = ActiveSheet.Name & '!A1:D100'

   ' Create a new worksheet

   Set sht = Sheets.Add

   ' Define where the PivotTable will start

   StartPvt = sht.Name & '!A3'

   ' Create Pivot Cache from Source Data

   Set pvtCache = ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:=SrcData)

   ' Create PivotTable from Pivot Cache

   Set pvt = pvtCache.CreatePivotTable(TableDestination:=StartPvt, TableName:='PivotTable1')

End Sub

Adding Fields to a PivotTable:

Once you have created a PivotTable, you can add fields to it:

Sub AddPivotFields()

   Dim pvt As PivotTable

   Set pvt = ActiveSheet.PivotTables('PivotTable1')

   ' Add fields to the PivotTable

   With pvt

       .PivotFields('Year').Orientation = xlPageField

       .PivotFields('Month').Orientation = xlColumnField

       .PivotFields('Account').Orientation = xlRowField

       .PivotFields('Amount').Orientation = xlDataField

   End With

End Sub

Office Apps Working Together

Working with Other Office Applications

You can use similar methods to work with other Office applications.

For example, you can automate Word to create documents, format text, and more.

Example: Creating a Word Document

Early Binding:

Open the VBA editor (Alt + F11).

Go to Tools -> References.

Check Microsoft Word xx.x Object Library.

Sub CreateWordDocument()

   Dim WordApp As Word.Application

   Dim WordDoc As Word.Document

   ' Create a new instance of Word

   Set WordApp = New Word.Application

   WordApp.Visible = True

   ' Create a new document

   Set WordDoc = WordApp.Documents.Add

   ' Add text

   WordDoc.Content.Text = 'Hello from Excel VBA!'

   ' Clean up

   Set WordDoc = Nothing

   Set WordApp = Nothing

End Sub

Connect with us:

0207 987 3777

Call for assistance

Request Callback

We will call you back

Server loaded in 0.69 secs.