If-Then-Else-End If

 

Uno de los controles lógicos usados en la programación estructurada es la selección. Para utilizar este control, se realiza una pregunta (la condición) cuya contestación puede ser una de dos posibilidades: Cierto o Falso.  Si la respuesta es cierta, se realizan una o varias instrucciones; si la respuesta es falsa, se realiza(n) otra(s) instrucción(es).  En el flujograma, se utiliza el diamante para presentar gráficamente este control lógico.

IF CON UNA SOLA INSTRUCCION

En un IF sencillo, tan solo existen instrucciones en la parte cierta, la parte falsa no se utiliza. Vea el siguiente ejercicio.

 

Ejercicio:

1.      Crear la siguiente forma:

 

2.      Escribir dentro del código del comando lo siguiente:

            Dim Color as Integer

            Color = Val(Text1.Text)

            If Color = 1  Then  MsgBox  “Seleccionó Rojo”

 

3.      Guarde el proyecto con el nombre Colores.

4.      Ejecute (Start) el proyecto. Confirme que al entrar el número 1 en el TextBox y dar click en el comando, aparecerá un MsgBox con el mensaje “Seleccionó Rojo”.

5.      Añada la otra instrucción de IF para que aparezca el mensaje correspondiente al seleccionar el número 2.

6.      Añada la otra instrucción de IF para que aparezca el mensaje correspondiente al seleccionar el número 3.

 

IF CON MAS DE UNA INSTRUCCION

En el ejercicio anterior, el IF se realiza si la condición es cierta. Si la condición es falsa, no se realiza ninguna instrucción.  La oración del IF está en una sola línea porque se realiza una sola instrucción (el MsgBox) en la parte cierta.  Si se va a realizar más de una instrucción, entonces se debe usar el End If. Vea el siguiente ejemplo:

 

1.      Busque el código del ejercicio anterior.

2.      Cambie la primera oración del IF como sigue:

If Color = 1 Then

            MsgBox  “Seleccionó Rojo”

            Form1.BackColor = vbRed

End If

3.      Ejecute el proyecto y confirme que al entrar el número 1 en el TextBox y dar click en el comando, aparecerá un MsgBox con el mensaje “Seleccionó Rojo”. Al dar OK en el mensaje, el color de la forma cambiará a rojo.

1.      Añada las instrucciones que se necesitan para que la forma cambie al color verde (vbGreen) y al color azul (vbBlue).

2.      Guarde el proyecto nuevamente.

 

En este ejercicio, se están ejecutando varias instrucciones cuando la condición es cierta.  Por tal razón, la parte que indica la condición se escribe al principio en la primera línea del IF, en las próximas líneas se escriben las instrucciones que se desean realizar y finaliza con el END IF. 

 

IF ENTRELAZADO

En el ejercicio que se está trabajando, se han escrito tres IF diferentes para probar cuál es el valor de la variable Color (el valor entrado por el usuario en el TextBox).  Cada uno de los IF es probado por separado, sin importar si un IF anterior ya se ejecutó.  Esto le añade tiempo de procesamiento innecesario al programa, pues si el valor de Color es 1, no es necesario ejecutar las condiciones del segundo y tercer IF.  Cuando se utilizan condiciones como ésta, se puede sustituir los IF separados por un IF dentro de otro IF, o sea, un IF entrelazado, también conocido como IF anidado (en inglés, “NESTED IF”).  El siguiente ejercicio presenta el IF entrelazado:

1.      En el proyecto colores, añada otro botón de comando. Cambie el Caption a IF Entrelazado.

2.      Escriba el siguiente código:

Dim Color as Integer

            Color = Val(Text1.Text)

            If Color = 1 Then

                        MsgBox  “Seleccionó Rojo”

                        Form1.BackColor = vbRed

            ElseIf Color = 2 Then

                        MsgBox  “Seleccionó Verde”

                        Form1.BackColor = vbGreen

            ElseIf Color = 3 Then

                        MsgBox  Seleccionó Azul

                        Form1.BackColor = vbBlue

            Else

                        MsgBox  “Favor seleccionar solo los números 1, 2 ó 3”

            End If

3.      Compruebe que puede utilizar este comando (If Entrelazado) de la misma manera que el otro comando (Cambiar color de la forma).

4.      Guarde el proyecto nuevamente.