Table of contents
Collapse the table of content
Expand the table of content

Const Statement

office 365 dev account|Last Updated: 6/12/2017
1 Contributor

Declares constants for use in place of literal values.


[ Public | Private ] Constconstname [ Astype ] =expression

The Const statement syntax has these parts:

PublicOptional. Keyword used at module level to declare constants that are available to all procedures in all modules. Not allowed in procedures.
PrivateOptional. Keyword used at module level to declare constants that are available only within the module where the declaration is made. Not allowed in procedures.
constnameRequired. Name of the constant; follows standard variable naming conventions.
typeOptional. Data type of the constant; may be Byte, Boolean, Integer, Long, Currency, Single, Double, Decimal (not currently supported), Date, String, or Variant. Use a separate Astype clause for each constant being declared.
expressionRequired. Literal, other constant, or any combination that includes all arithmetic or logical operators except Is.

Remarks Constants are private by default. Within procedures, constants are always private; their visibility can't be changed. In standard modules, the default visibility of module-level constants can be changed using the Public keyword. In class modules, however, constants can only be private and their visibility can't be changed using the Public keyword. To combine several constant declarations on the same line, separate each constant assignment with a comma. When constant declarations are combined in this way, the Public or Private keyword, if used, applies to all of them. You can't use variables, user-defined functions, or intrinsic Visual Basic functions (such as Chr ) in expressions assigned to constants.

Note Constants can make your programs self-documenting and easy to modify. Unlike variables, constants can't be inadvertently changed while your program is running.

If you don't explicitly declare the constant type using Astype, the constant has the data type that is most appropriate for expression. Constants declared in a Sub, Function, or Property procedure are local to that procedure. A constant declared outside a procedure is defined throughout the module in which it is declared. You can use constants anywhere you can use an expression.


This example uses the Const statement to declare constants for use in place of literal values. Public constants are declared in the General section of a standard module, rather than a class module. Private constants are declared in the General section of any type of module.

' Constants are Private by default. 
Const MyVar = 459 

' Declare Public constant. 
Public Const MyString = "HELP" 

' Declare Private Integer constant. 
Private Const MyInt As Integer = 5 

' Declare multiple constants on same line. 
Const MyStr = "Hello", MyDouble As Double = 3.4567 
© 2018 Microsoft