VBA: instrucción If anidada
Una declaración If o ElseIf dentro de otra declaración If o ElseIf. Las sentencias If internas se ejecutan en función de las sentencias If más externas. Esto permite que VBScript maneje condiciones complejas con facilidad.
Sintaxis
A continuación se muestra la sintaxis de un anidado If declaración en VBScript.
If(boolean_expression) Then
Statement 1
.....
.....
Statement n
If(boolean_expression) Then
Statement 1
.....
.....
Statement n
ElseIf (boolean_expression) Then
Statement 1
.....
....
Statement n
Else
Statement 1
.....
....
Statement n
End If
Else
Statement 1
.....
....
Statement n
End If
Ejemplo
Para fines de demostración, busquemos el tipo de número positivo con la ayuda de una función.
Private Sub nested_if_demo_Click()
Dim a As Integer
a = 23
If a > 0 Then
MsgBox "The Number is a POSITIVE Number"
If a = 1 Then
MsgBox "The Number is Neither Prime NOR Composite"
ElseIf a = 2 Then
MsgBox "The Number is the Only Even Prime Number"
ElseIf a = 3 Then
MsgBox "The Number is the Least Odd Prime Number"
Else
MsgBox "The Number is NOT 0,1,2 or 3"
End If
ElseIf a < 0 Then
MsgBox "The Number is a NEGATIVE Number"
Else
MsgBox "The Number is ZERO"
End If
End Sub
Cuando se ejecuta el código anterior, produce el siguiente resultado.
The Number is a POSITIVE Number
The Number is NOT 0,1,2 or 3