Excel VBA - Basics videos | Excel VBA Part 18 - Creating Functions

Posted by Andrew Gould on 17 February 2014

A VBA function is a procedure that can return a value and this video teaches you how to create them. You'll learn how to declare a function and how to add parameters, including optional parameters and default values. You'll also see several ways to call the functions you've written, including from other VBA procedures and from an Excel worksheet. The video also talks about how to rewrite existing subroutines to replace repetitive code with functions.

You can increase the size of the video:

Full screen mode for YouTube

You can view the video in full screen mode as shown on the left, using the icon at the bottom right of the frame.

You can also increase the quality of the video:

Changing resolution

You can improve the resolution of the video using another icon at the bottom right of the frame. This will slow down the connection speed, but increase the display and sound quality. This icon only becomes visible when you start playing the video.

Finally, if nothing happens when you play the video, check that you're not using IE in compatibility view.

This page has 1 thread Add post
04 Nov 17 at 11:43

Usually you create a function of a type, such as:

Public Function MyFunc (arg As String) As String

End Function

However, I have come across functions such as:

Public Function MyFunc (arg As Someclass) As Dictionary

End Function

How does one go about learning this?

06 Nov 17 at 21:21

The only difference with this sort of function is that it returns an object, rather than a string of text.  To set the value for this function, you'd need to include at the end  a line of code beginning:

SET MyFunc = ...

Note the SET keyword because you're setting an object variable.  If this doesn't make sense, I'd go back to the VBA series of tutorials and work your way through them.