Like a number or a string, a Boolean value can be stored in a variable. To declare such a variable, use the Boolean keyword. Here is an example: Sub Exercise() Dim EmployeeIsMarried As Boolean End Sub To actually use a Boolean variable, you can assign a value to it. By default, if you declare a Boolean variable but do not initialized it, it receives a value of False: Sub Exercise() Dim EmployeeIsMarried As Boolean Range("B2").FormulaR1C1 = "Employee Is Married? " & EmployeeIsMarried End Sub This would produce:
To initialize a Boolean variable, assign it a True or a False value. In the Visual Basic language, a Boolean variable can also deal with numeric values. The False value is equivalent to 0. For example, instead of False, you can initialize a Boolean variable with 0. Any other numeric value, whether positive or negative, corresponds to True: Sub Exercise() Dim EmployeeIsMarried As Boolean EmployeeIsMarried = -792730 Range("B2").FormulaR1C1 = "Employee Is Married? " & EmployeeIsMarried End Sub This would produce:
The number can be decimal or hexadecimal: Sub Exercise() Dim EmployeeIsMarried As Boolean EmployeeIsMarried = &HFA26B5 Range("B2").FormulaR1C1 = "Employee Is Married? " & EmployeeIsMarried End Sub
As done with the other data types that we have used so far, Boolean values can be involved with procedures. This means that a Boolean variable can be passed to a procedure and/or a function can be made to return a Boolean value. Some of the issues involved with procedures require conditional statements that we will study in the next lesson. Still, the basic functionality is possible with what we have learned so far.
To pass an argument as a Boolean value, in the parentheses of the procedure, type the name of the argument followed by the As Boolean expression. Here is an example: Private Sub CheckingEmployee(ByVal IsFullTime As Boolean) End Sub In the same way, you can pass as many Boolean arguments as you need, and you can combine Boolean and non-Boolean arguments as you judge necessary. Then, in the body of the procedure, use (or do not use) the Boolean argument as you wish.
Just as done for the other data types, you can create a function that returns a Boolean value. When declaring the function, specify its name and the As Boolean expression on the right side of the parentheses. Here is an example: Public Function IsDifferent() As Boolean Of course, the function can take arguments of any kind you judge necessary: Public Function IsDifferent(ByVal Value1 As Integer, _ ByVal Value2 As Integer) As Boolean In the body of the function, do whatever you judge necessary. Before exiting the function, you must return a value that evaluates to True or False. We will see an example below.
To assist you with validating some values or variables to true or false, the Visual Basic language provides many functions. First, to convert a value to Boolean, you can use the CBool() function. Its syntax is: Function CBool(ByVal Expression As Variant) As Boolean Like all conversion functions, CBool takes one argument, the expression to be evaluated. It should produce a valid Boolean value. If it does, the function returns True or False.
After declaring a variable, memory is reserved for but you should assign value to it before using it. At any time, to check whether a variable has been initialized, you can call the IsEmpty() function. Its syntax is: Public Function IsEmpty(ByVal Expression As Variant) As Boolean When calling this function, pass the name of a variable to it. If the variable was already initialized, the function would return True. Otherwise, it would return False.
One of the most valuable operations you will perform on a value consists of finding out whether it is numeric or not. To assist you with this, the Visual Basic language provides a function named IsNumeric. Its syntax is: Public Function IsNumeric(ByVal Expression As Variant) As Boolean This function takes as argument the value or expression to be evaluated. If the argument holds or can produce a valid integer or a decimal value, the function returns True. Here is an example: Sub Exercise() Dim Value As Variant Value = 258.08 * 9920.3479 Range("B2").FormulaR1C1 = "Is Numeric? " & IsNumeric(Value) End Sub This would produce: If the argument is holding any other value that cannot be identified as a number, the function produces False. Here is an example: Sub Exercise() Dim Value As Variant Value = #12/4/1770# Range("B2").FormulaR1C1 = "Is Numeric? " & IsNumeric(Value) End Sub This would produce:
To find out whether an expression holds a valid date, a valid, or not, you can call the IsDate() function. Its syntax is: Public Function IsDate(ByVal Expression As Variant) As Boolean This function takes an argument as the expression to be evaluated. If the argument holds a valid date and/or time, the function returns True. Here is an example: Sub Exercise() Dim DateHired As Variant DateHired = "9/16/2001" Range("B2").FormulaR1C1 = "Is 9/16/2001 a valid date? " & IsDate(DateHired) End Sub This would produce: If the value of the argument cannot be evaluated to a valid date or time, the function returns False. Here is an example: Sub Exercise() Dim DateHired As Variant DateHired = "Who Knows?" Range("B2").FormulaR1C1 = "Is it a valid date? " & IsDate(DateHired) End Sub This would produce:
After declaring a variable, you should initialize it with a valid value. Sometimes you will not. In some other cases, you may be using a variable without knowing with certainty whether it is holding a valid value. To assist you with checking whether a variable is currently holding a valid value, you can call the IsNull() function. Its syntax is: Public Function IsNull(ByVal Expression As Variant) As Boolean When calling this function, pass the name of a variable to it. If the variable is currently holding a valid value, this function would returns True. Otherwise, it would return False. |
|
|||||||||||||||||||||||||||||||||
|