VBA includes several built-in operators and functions, which can be used for building expressions or performing tasks in your VBA code.
The built-in VBA operators consist of mathematical operators, string operators, comparison operators and logical operators. The different types of Operators are discussed individually below.
The main Mathematical VBA operators are listed in the table below.
The precedences that are listed alongside the operators are the defaults, which are applied in the absence of brackets. However, the order in which the VBA operators are applied can be controlled by adding brackets to an expression:
Operator | Action | Precedence (1=top; 5=bottom) |
---|---|---|
^ | The power operator | 1 |
* | The multiplication operator | 2 |
/ | The division operator | 2 |
\ | The integer division operator (divides two numbers and returns the integer result - e.g. 7\4 gives a result of 1) | 3 |
Mod | The modulus operator (divides two numbers and returns the remainder - e.g. 8 Mod 3 gives a result of 2) | 4 |
+ | The addition operator | 5 |
- | The subtraction operator | 5 |
The concatenate operator & can be used to join strings together.
Operator | Action |
---|---|
& | The concatenate operator (e.g. "A" & "B" gives the result "AB") |
Comparison operators compare two numbers or strings and return a logical (True or False) result. The main Excel VBA comparison operators are listed in the table below:
Operator | Action |
---|---|
= | Equal To |
< > | Not Equal To |
< | Less Than |
> | Greater Than |
<= | Less Than or Equal To |
>= | Greater Than or Equal To |
Logical operators also return a logical (True or False) result. The main Excel VBA logical operators are listed in the table below:
Operator | Action |
---|---|
And | Logical Operator And (e.g. the expression 'A And B' returns True if BOTH A AND B are true and returns False otherwise) |
Or | Logical Operator Or (e.g. the expression 'A Or B' returns True if EITHER A OR B is true and returns False otherwise) |
Not | Negates an evaluation (e.g. the expression 'Not A' returns True if A is false and returns False if A is true) |
It should be noted that the above tables do not provide an exhaustive list of VBA operators. A more complete list can be obtained from the Visual Basic Developer Center Website
VBA also has a large number of built-in functions that are available to be used in your VBA code. Some of the more commonly used VBA functions are listed below:
Function | Action | ||||
---|---|---|---|---|---|
Date | Returns the current system date. | ||||
Time | Returns the current system time. | ||||
Now | Returns the current system date and time. | ||||
Int |
Returns the integer part of a numeric value.
|
||||
Abs |
Returns the absolute value of a supplied number.
|
||||
InStr |
Returns the position of a substring within a string.
|
||||
Len |
Returns the length of a supplied text string.
|
||||
Left |
Returns a specified number of characters from the start of a supplied string.
|
||||
Mid |
Returns a specified number of characters from the middle of a supplied string.
|
||||
Right |
Returns a specified number of characters from the end of a supplied string.
|
||||
UBound | Returns the upper subscript of a supplied array. |
Note that the above list only provides a small selection of some of the more commonly used Excel Visual Basic built-in functions. For a more detailed list of built-in VBA functions, see the VBA Functions page.