Function Statement

Named Arguments

No

Syntax

[Public | Private | Friend] [Static] Function name _
          [(arglist)] [As type][()] 
   [statements]
   [name = expression]
   [Exit Function] 
   [statements]
   [name = expression]
End Function

Public

Use: Optional

Type: Keyword

Gives the function scope through all procedures in all modules in the project. If used within a createable class module, the function is also accessible from outside the project. Public, Private, and Friend are mutually exclusive.

Private

Use: Optional

Type: Keyword

Restricts the scope of the function to those procedures within the same module. Public, Private, and Friend are mutually exclusive.

Friend

Use: Optional

Type: Keyword

Only valid within a class module; gives the function scope to all modules within a project, but not to modules outside the project. Public, Private, and Friend are mutually exclusive.

Static

Use: Optional

Type: Keyword

Preserves the value of variables declared inside the function between calls to the function.

name

Use: Required

The name of the function.

arglist

Use: Optional

A comma-delimited list of variables to be passed to the function as arguments from the calling procedure.

type

Use: Optional

The return data type of the function.

statements

Use: Optional

Program code to be executed within the function.

expression

Use: Optional

The value to return from the function to the calling procedure.

arglist uses the following syntax and parts:

[Optional] [ByVal | ByRef] [ParamArray] varname[( )] [As type

Get VB & VBA in a Nutshell: The Language now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.