O'Reilly logo

Writing Word Macros, Second Edition by Steven Roman PhD

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

Constants

The VBA language has two types of constants. A literal constant (also called a constant or literal) is a specific value, such as a number, date, or text string, that does not change and that is used exactly as written. Note that string constants are enclosed in double quotation marks, as in:

	"Donna Smith"

and date constants are enclosed between number signs, as in:

	#1/1/96#

For instance, the following code stores a date in the variable called dt:

	Dim dt As Date
	dt = #1/2/97#

The second type of constant, a symbolic constant (also sometimes referred to simply as a constant), is another name for a literal constant.

To define or declare a symbolic constant in a program, use the Const keyword:

	Const InvoicePath = "d:\Invoices\"

In this case, Word will replace every instance of InvoicePath in our code with the string “d:\Invoices\”. Thus, InvoicePath is a constant, since it never changes value, but it is not a literal constant, since it is not used as written.

The virtue of using symbolic constants is that, if we decide later to change “d:\ Invoices\” to “d:\OldInvoices\”, you need to change only the definition of InvoicePath:

	Const InvoicePath = "d:\OldInvoices\"

rather than search through the entire program for every occurrence of the phrase “d:\Invoices\”!

Note that it is generally good programming practice to declare any symbolic constants at the beginning of the procedure in which they are used (or in the Declarations section of a code module). This improves readability and simplifies ...

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