Buying for a Team? Gift This Course
Wishlisted Wishlist

Please confirm that you want to add Ultimate Excel VBA to your Wishlist.

Add to Wishlist

Ultimate Excel VBA

Programming for the Business Professional
4.6 (931 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
5,312 students enrolled
Created by Mark Talbert
Last updated 8/2013
English English
$10 $25 60% off
2 days left at this price!
30-Day Money-Back Guarantee
  • 8.5 hours on-demand video
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Have a coupon?
What Will I Learn?
Course Goal: You will obtain practical fluency in Visual Basic for Applications (VBA) specifically as it applies to Microsoft Excel.
Course Objectives: 1) You will learn to automate and extend Excel by adding VBA projects to your workbooks. 2) You will learn to enhance, customize and extend the Excel user interface through modifications to the Excel environment, the creation of custom user forms, and the use of ActiveX controls. 3) You will learn how to respond to workbook, worksheet and application events to automate macro execution. 4) You will learn how it is possible to reach outside of Excel by way of VBA, in order to perform cross-application tasks.
View Curriculum
  • Microsoft Excel (2007-2013)

This is an introductory course on how to program Excel using VBA macros. You will learn to automate and extend the Excel environment to supercharge your Excel models, automate routine tasks, customize your user interface, and manage large quantities of data. This course is based on the instructor's semester-long college courses which have produced thousands of graduates in the fields of business, finance, health care and public policy. Designed for busy professionals who need to take their Excel abilities to the next level, you will not waste time on topics which you are unlikely to use, and you will receive extra attention to the often confusing or overlooked details that will make the most difference to your ultimate understanding. Over 8 hours of instruction!

Who is the target audience?
  • This is an introductory programming course, so no previous programming experience is assumed. The student should be at least moderately comfortable with Excel. The more prior exposure to Excel you have the more you will get out of the course, but you do not need to be an Excel expert to take the course.
Students Who Viewed This Course Also Viewed
Curriculum For This Course
Expand All 36 Lectures Collapse All 36 Lectures 08:34:13
3 Lectures 37:13
A brief overview of this course. What VBA really is and how it can be used. Also, what prior knowledge is recommended and tips for getting the most out of the course.
Preview 10:20

An introduction to using the macro recorder, adding the Developer tab to the ribbon, and Absolute versus Relative recording modes. Also, saving macro-enabled workbooks, and macro security.
Macro Recording Basics

An introduction to the VBA editor window, moving back and forth between editor and workbook, and managing VBA projects.
The VBA Editor

This quiz covers the topics presented in Section 1.
Macro Recorder and the VBA Editor
5 questions
The Excel Object Library
9 Lectures 02:10:21
A brief explanation of objects, properties and methods, and a look at the relationship between the VBA language and the Excel object library.
VBA & The Object Library

An example of using the macro recorder to set object properties. Further explanation of comments and an introduction to the WITH...END WITH construct.
Objects and Properties

An example of using the macro recorder to execute object methods, both with and without parameters, and an explanation of how named parameters work.
Objects and Methods

An explanation of the Application object and its properties, and how properties can contain other objects.
More about Objects and Properties

A look at the many different ways of referencing Range objects.
Referencing a Range

Manipulating ranges using some important Range properties that allow you to derive new Range objects based on existing Range objects.
Important Range Properties

A look at the different ways of referencing worksheet objects, most importantly, the Worksheets collection.
The Worksheets Collection

A look at the Workbooks collection, and other ways of referencing workbook objects.
The Workbooks Collection

Using Intellisense lists, the Object Browser, and VBA help to discover more about objects, and their associated properties and methods.
Exploring the Object Library

This quiz covers the topics presented in Section 2.

The Excel Object Library
5 questions
The VBA Language
13 Lectures 03:13:30
Using the MsgBox() and InputBox() VBA functions for simple macro input and output.
Simple Input & Output

Declaring and using simple variables and enforcing variable declaration with Option Explicit. Also a short survey of the most common data types.
Variables & Data Types

Using object type variables to reference and manipulate Excel objects.
Object Type Variables

How to use VBA and Excel worksheet functions in your macros.
VBA & Worksheet Functions

How to create custom functions in VBA that can be called from your macros or from the worksheet.
User-Defined Functions

Introduction to variations on IF...THEN, IF...THEN...ELSE and ELSEIF to perform conditional branching in your code. Also, combining logical conditions with AND.
Branching: IF...THEN

Introduction to the SELECT...CASE statement as an alternative to ELSEIF. Also, using the Typename() VBA function to determine the data type of a property or variable, and combining logical conditions with OR.
Branching: SELECT...CASE

Controlling program flow through repetition using 4 different variations of the Do...Loop. 
Looping: DO...LOOP

Controlling program flow through repetition using variations of the For...Next loop.

Looping: FOR...NEXT

Controlling program flow through repetition using variations of the For...Each loop.

Looping: FOR...EACH

Understanding variable scope: local, module and global, and when each should be used. How to declare variables of different scope.

Variable Scope

Trapping runtime errors in your code, and providing simple error handlers to report the error and gracefully exit.

Error Handling

This short project combines and reinforces some of the skills and techniques introduced so far in the course: looping, simple and object type variables, defining and passing parameters, and using important Range properties such as CurrentRegion and Resize.

Project 1 - The VBA Language

    • This quiz covers the topics presented in Section 3.

The VBA Language
5 questions
Launching Macros: Events & Shortcuts
5 Lectures 01:01:26

A look at additional techniques you can use to launch macros, by attaching them to objects on the worksheet or modifying the Quick Access Toolbar.

Macro Launching Shortcuts

Modifying the Ribbon by adding tabs and groups; attaching macros to the Ribbon.

Modifying the Ribbon

Hooking into Workbook and Worksheet events to run code automatically in response to user actions.

Workbook & Worksheet Events

Hooking into Application events to run code automatically in response to keyboard actions and system time.

Application Events

      • This short project combines and reinforces some of the skills and techniques introduced in this section, specifically using a Workbook event handler to modify Excel's save/close behavior.

Project 2 - Event Handling

        • This quiz covers the topics presented in Section 4.

Launching Macros: Events & Shortcuts
5 questions
Modifying the User Interface
5 Lectures 01:15:12

Exploring additional features of MsgBox, including modifying visual characteristics such as title bar, icon and buttons. How to test for user choices, OK/Cancel, Yes/No, etc...

Enhanced Message Box

Enhancing the Excel user interface by adding ActiveX controls to the worksheet, without using any code.

ActiveX & The Worksheet (No Code)

      • Enhancing the Excel user interface by adding ActiveX controls to the worksheet, with code.

ActiveX & The Worksheet (With Code)

Presenting and gathering information through custom user forms: initializing controls, displaying and disposing of the form.

Basic User Forms

            • This short project combines and reinforces some of the skills and techniques introduced in this section, specifically creating interaction between ActiveX controls on user forms.

Project 3 - User Forms & ActiveX

This quiz covers the topics presented in section 5.

Modifying the User Interface
5 questions
What's Next?
1 Lecture 16:31

A simple example of cross-application programming: reaching into Word from Excel to insert a chart and create a series of documents.

Reaching Beyond Excel
About the Instructor
4.6 Average rating
927 Reviews
5,312 Students
1 Course
Educator and Consultant

Mark Talbert has been using Excel aggressively since version 1.0, and writing Excel macros both before and after the introduction of the VBA language. He has introduced several college-level courses over 15+ years on Excel modeling and VBA programming, which have together produced thousands of graduates who now work across a wide range of industries. His most frequent email subject line from former students is "Thank God I took your course!" followed closely by "I really wish I would have taken your course!"

Report Abuse