Tomando Decisiones en VBA, Parte IV

If-Then-ElseIf-[Else]-End If

En algunos casos debemos evaluar una variable para diferentes condiciones y dependiendo del valor que adopte la variable tomar una decisión. En este caso se utiliza el comando ElseIf.

La sintaxis de esta estructura de multiples condiciones es la siguiente:

If Condición1 Then

Declaraciones si Condición1 es True

ElseIf Condición2 Then

Declaraciones si Condición2 es True

ElseIf Condición3 Then

Declaraciones si Condición3 es True

ElseIf CondiciónN Then

Declaraciones si CondiciónN es True

Else

Declaraciones si Todas las condiciones son False

End If

En un bloque de condiciones puede haber cualquier número de instrucciones ElseIf. La instrucción Else es opcional y solamente se ejecutara cuando todas las condiciones evaluadas con ElseIf resulten false. En esta estructura se va evaluando de arriba hacia abajo las condiciones y cuando la primera resulte true, el programa sale de la estructura If-Then-ElseIf-[Else]-End If.

A continuación mostraremos un ejemplo sencillo para la aplicación de este tipo de estructura. Un procedimiento para evaluar si un número entero es negativo, cero o positivo.

ElseIf-1

En esta rutina se utiliza un inputbox para asignar un valor a la variable X.

ElseIf-2

En este caso como solo existen tres estados para la variable X: negativo, cero o positivo. solo se requiere utilizar un ElseIf y un Else. La primera condición es evaluada con el If, el cual pregunta si el numero es igual a 0. y la segunda condición es evaluada con un ElseIf, donde se pregunta si el número es mayor que 0. Si las primeras condiciones son False, entonces se ejecuta el comando Else y por descarte el numero es negativo.

ElseIf-4

ElseIf-5

En este ejemplo hemos introducido el valor –50 en el inputbox, y al ejecutar el procedimiento presenta el mensaje “El número es Negativo”.

Un ejemplo un poco mas largo con varias condiciones evaluada es la siguiente. Se Coloca una letra desde la A hasta la F para evaluar una nota introducida en la celda A6 de la hoja de calculo.

ElseIf-6

 

Referencias Bibliográficas

Korol, J. (2003). Learn Microsoft Excel 2002 VBA Programming with XML and ASP. Plano, Texas, USA: Wordware Publishing, Inc.

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s