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.
In previous lessons, we saw how to declare variables of different types, including Object. At any time, to find out whether a variable in an Object type, you can call the IsObject() function. Its syntax is: Public Function IsObject(ByVal VariableName As String) As Boolean This function takes as argument the name of a variable. If the argument represents an Object type, the function returns True. Otherwise, it returns False.
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.
Microsoft Access doesn't use conditionals statements like traditional computer languages do. It relies on special condition-oriented functions to perform the same operations. One of these functions is called Nz. The Nz() function is used to check the value of an expression or a control. Its syntax is: Nz(Value, ByVal Optional ValueIfNull IS NULL) As Variant The function checks the value of the (first) argument. If Value is null, the function returns 0 or an empty string. The second argument is optional. You can provide it as an alternative to 0 in case the Value argument is null. This means, that, when the first argument is null, instead of returning 0 or an empty string, the Nz() function would return to the value of the second argument.
A comparison is an operation used to get the boolean result of two values one checked against the other. Such a comparison is performed between two values of the same type.
To compare two variables for equality, use the = operator. Its syntax is: Value1 = Value2 The equality operation is used to find out whether two variables (or one variable and a constant) hold the same value. From our syntax, the value of Value1 would be compared with the value of Value2. If Value1 and Value2 hold the same value, the comparison produces a True result. If they are different, the comparison renders false or 0.
Here is an example: Private Sub cmdBooleanVariable_Click() Dim IsFullTime As Boolean MsgBox "Is Employee Full Time? " & IsFullTime IsFullTime = True MsgBox "Is Employee Full Time? " & IsFullTime End Sub This would produce: As opposed to checking for equality, you may instead want to know whether two values are different. The operator used to perform this comparison is <> and its formula is: Variable1 <> Variable2 If the operands on both sides of the operator are the same, the comparison renders false. If both operands hold different values, then the comparison produces a true result. This also shows that the equality = and the inequality <> operators are opposite. Here is an example: Public Function IsDifferent(ByVal Value1 As Integer, _ ByVal Value2 As Integer) As Boolean IsDifferent = Value1 <> Value2 End Function Private Sub cmdBooleanVariable_Click() Dim a%, b% Dim Result As Boolean a% = 12: b% = 48 Result = IsDifferent(a%, b%) MsgBox "The resulting comparison of 12 <> 48 is " & Result End Sub This would produce: To find out whether one value is lower than another, use the < operator. Its syntax is: Value1 < Value2 The value held by Value1 is compared to that of Value2. As it would be done with other operations, the comparison can be made between two variables, as in Variable1 < Variable2. If the value held by Variable1 is lower than that of Variable2, the comparison produces a True. Here is an example: Private Sub cmdBooleanVariable_Click() Dim PartTimeSalary, ContractorSalary As Double Dim IsLower As Boolean PartTimeSalary = 20.15 ContractorSalary = 22.48 IsLower = PartTimeSalary < ContractorSalary MsgBox ("Part Time Salary: " & PartTimeSalary & vbCrLf & _ "Contractor Salary: " & ContractorSalary & vbCrLf & _ "Is PartTimeSalary < ContractorSalary? " & IsLower) PartTimeSalary = 25.55 ContractorSalary = 12.68 IsLower = PartTimeSalary < ContractorSalary MsgBox ("Part Time Salary: " & PartTimeSalary & vbCrLf & _ "Contractor Salary: " & ContractorSalary & vbCrLf & _ "Is PartTimeSalary < ContractorSalary? " & IsLower) End Sub This would produce: The previous two operations can be combined to compare two values. This allows you to know if two values are the same or if the first is less than the second. The operator used is <= and its syntax is: Value1 <= Value2 The <= operation performs a comparison as any of the last two. If both Value1 and VBalue2 hold the same value, result is true or positive. If the left operand, in this case Value1, holds a value lower than the second operand, in this case Value2, the result is still true: When two values of the same type are distinct, one of them is usually higher than the other. VBasic provides a logical operator that allows you to find out if one of two values is greater than the other. The operator used for this operation uses the > symbol. Its syntax is: Value1 > Value2 Both operands, in this case Value1 and Value2, can be variables or the left operand can be a variable while the right operand is a constant. If the value on the left of the > operator is greater than the value on the right side or a constant, the comparison produces a True value. Otherwise, the comparison renders False or null:
Here is an example: Private Sub cmdBooleanVariable_Click() Dim PartTimeSalary, ContractorSalary As Double Dim IsLower As Boolean PartTimeSalary = 20.15 ContractorSalary = 22.48 IsLower = PartTimeSalary > ContractorSalary MsgBox ("Part Time Salary: " & PartTimeSalary & vbCrLf & _ "Contractor Salary: " & ContractorSalary & vbCrLf & _ "Is PartTimeSalary > ContractorSalary? " & IsLower) PartTimeSalary = 25.55 ContractorSalary = 12.68 IsLower = PartTimeSalary > ContractorSalary MsgBox ("Part Time Salary: " & PartTimeSalary & vbCrLf & _ "Contractor Salary: " & ContractorSalary & vbCrLf & _ "Is PartTimeSalary > ContractorSalary? " & IsLower) End Sub This would produce: The greater than or the equality operators can be combined to produce an operator as follows: >=. This is the "greater than or equal to" operator. Its syntax is: Value1 >= Value2 A comparison is performed on both operands: Value1 and Value2. If the value of Value1 and that of Value2 are the same, the comparison produces a True value. If the value of the left operand is greater than that of the right operand, the comparison still produces True. If the value of the left operand is strictly less than the value of the right operand, the comparison produces a False result:
Here is a summary table of the logical operators we have studied:
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|