Bitácora del desarrollo de mi clase de Visual Basic, en el que ´publicaré el material de la clase y recibiré comentarios y sugerencias de mis alumnos.

Friday, July 31, 2009

4.2.1. Sentencia If... Then... Else

Estructuras de Decisión

Los procedimientos de Visual Basic pueden probar condiciones y, dependiendo de los resultados, realizar diferentes operaciones. Entre las estructuras de decisión que acepta Visual Basic se incluyen las siguientes:

§ If...Then

§ If...Then...Else

§ Select Case

If...Then

Use la estructura If...Then para ejecutar una o más instrucciones basadas en una condición. Puede utilizar la sintaxis de una línea o un bloque de varias líneas:

§ If condición Then Sentencias

§ If condición Then

Sentencias

End If

Condición normalmente es una comparación, pero puede ser cualquier expresión que dé como resultado un valor numérico. Visual Basic interpreta este valor como True o False; un valor numérico cero es False y se considera True cualquier valor numérico distinto de cero. Si condición es True, Visual Basic ejecuta todas las sentencias que siguen a la palabra clave Then. Puede utilizar sintaxis de una línea o de varias líneas para ejecutar una sentencia basada en una condición, los siguientes dos ejemplos son equivalentes:

If cualquierFecha < Now Then CualquierFecha = Now


If cualquierFecha < Now Then

CualquierFecha = Now

End If

Observe que el formato de una única línea de If...Then no utiliza la instrucción End If. Si se desea ejecutar más de una línea de código cuando condición sea True, debe utilizar la sintaxis de bloque de varias líneas If...Then...End If.

If cualquierFecha < Now Then

CualquierFecha = Now

Timer1.Enabled = False ‘ Desactiva el control Timer.

End If


If chkAlumnoUNI.Value=1 Then

txtCosto = Format (txtCosto*0.70,”Fixed”)

txtCódigo.Enabled = True

End If

If...Then...Else

Utilice un bloque If...The...Else para definir varios bloques de sentencias, uno de los cuales se ejecutará:

If condición1 Then

[bloque de sentencias 1]

[ElseIf condición2 Then

[bloque de sentencias 2]] ...

[Else

[bloque de sentencias n]]

End If

Visual Basic evalúa primero condición1. Si es False, Visual Basic procede a evaluar condición2 y así sucesivamente, hasta que encuentre una condición True. Cuando encuentra una condición True, Visual Basic ejecuta el bloque de instrucciones correspondientes y después ejecuta el código que sigue a End If. Opcionalmente, puede incluir un bloque de instrucciones Else, que Visual Basic ejecutará sin ninguna de las condiciones es True.

If...Then...ElseIf es un caso especial de If...Then...Else. Observe que puede tener cualquier número de cláusula ElseIf o ninguna. Puede incluir una cláusula Else sin tener en cuenta si tiene o no cláusula ElseIf.

Por ejemplo, la aplicación podría realizar distintas acciones dependiendo del control en que se haya hecho clic de una matriz de controles de menú:

Ejemplo1

Private Sub mnuCut_Click (Index As Integer)

If Index = 0 Then ‘ Comando Cortar

CopyActiveControl ‘ Llama a procedimientos generales

ClearActiveControl

ElseIf Index = 1 Then ‘ Comando Copiar

CopyActiveControl

ElseIf Index = 2 Then ‘ Comando Borrar

ClearActiveControl

Else ‘ Comando Pegar

PasteActiveControl

End If

End Sub

Ejemplo2:

If ClaveUsuario=”DSI” Then

‘ Permite al usuario entrar al sistema

...

...

Else

‘ Mostrar un mensaje advirtiendo error en la clave

...

...

End If

Ejemplo3:

Private Sub DeterminaCondición ( )

If Val (txtPromedio) >=13 Then

txtCondición = “Aprobado”

ElseIf Val (txtPromedio) >= 10 Then

txtCondición = “Asistente”

Else

txtCondición = “Desaprobado”

End If

End Sub

Observe que siempre puede agregar más cláusulas ElseIf a la estructura If...Then. Sin embargo, esta sintaxis puede resultar tediosa de escribir cuando cada ElseIf compara la misma expresión con un valor distinto. Para estas situaciones, puede utilizar la estructura de decisión Select Case.

1 Comments:

Blogger Unknown said...

Hola, queria saber como hacer una restriccion para dos hojas diferentes.
Coger un valor con una restriccion en una hoja y llevarla a otra hoja.

Una vez en la segunda hoja ((en el cuadro 1)), si cumple otra condicion, que aparezca en otro cuadro((cuadro 2)) en esa segunda hoja

gracias

4:08 AM

 

Post a Comment

<< Home