O'Reilly logo

VB & VBA in a Nutshell: The Language by Paul Lomax

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

CallByName Function (VB6)

Named Arguments

No

Syntax

CallByName(object, procedurename, calltype, _
           [argument1,..., argumentn])

object

Use: Required

Data Type: Object

A reference to the object containing the procedure being called.

procedurename

Use: Required

Data Type: String

The name of the procedure to call.

calltype

Use: Required

Data Type: vbCallType constant

A constant that indicates the type of procedure being called. vbCallType constants are listed in the next table.

arguments

Use: Optional

Data Type: Variant

Any number of variant arguments, depending on the argument list of the procedure to call.

Constant Value Description
vbGet
2 The called procedure is a Property Get
vbLet
4 The called procedure is a Property Let
vbMethod
1 The called procedure is a method; this can be a Sub or a Function within object
vbSet
8 The called procedure is a Property Set

Return Value

Depends on the return value (if any) of the called procedure.

Description

Provides a flexible method for calling a public procedure in a VB object module. Since procedurename is a string expression, rather than the hard-coded name of a routine, it's possible to call routines dynamically at runtime with a minimum of coding.

Rules at a Glance

  • The return type of CallByName is the return type of the called procedure.

  • procedurename isn't case sensitive.

Programming Tips and Gotchas

  • At last, VB allows you to create a call to a procedure using a string. This means that the call can be flexible at runtime.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required