Puede controlar el flujo de su secuencia de comandos con instrucciones condicionales y instrucciones de bucle. Mediante instrucciones condicionales, puede escribir código VBScript para tomar decisiones y repetir acciones. Están disponibles las siguientes instrucciones condicionales en VBScript:
La instrucción If...Then...Else se utiliza para evaluar si una condición es True o False y, según el resultado, especificar una o más instrucciones para ejecutar. Normalmente, la condición es una expresión que utiliza un operador de comparación para comparar un valor o variable con otro. Para obtener más información acerca de operadores de comparación, consulte Operadores de comparación. Las instrucciones If...Then...Else se pueden anidar a tantos niveles como necesite.
Para ejecutar sólo una instrucción cuando una condición es True, utilice la sintaxis de línea simple para la instrucción If...Then...Else. El siguiente ejemplo muestra la sintaxis de línea simple. Tenga en cuenta que este ejemplo omite la palabra clave Else.
Sub FixDate() Dim myDate myDate = #2/13/95# If myDate < Now Then myDate = Now End Sub
Para ejecutar más de una línea de código, debe utilizar la sintaxis de línea múltiple (o bloque). Esta sintaxis incluye la instrucción End If, tal y como se muestra en el siguiente ejemplo:
Sub AlertUser(valor) If value = 0 Then AlertLabel.ForeColor = vbRed AlertLabel.Font.Bold = True AlertLabel.Font.Italic = True End If End Sub
Puede utilizar una instrucción If...Then...Else para definir dos bloques de instrucciones ejecutables: un bloque para ejecutarse si la condición es True, el otro bloque para ejecutarse si la condición es False.
Sub AlertUser(valor) If value = 0 Then AlertLabel.ForeColor = vbRed AlertLabel.Font.Bold = True AlertLabel.Font.Italic = True Else AlertLabel.Forecolor = vbBlack AlertLabel.Font.Bold = False AlertLabel.Font.Italic = False End If End Sub
Una variación en la instrucción If...Then...Else le permite elegir entre diversas alternativas. Agregar cláusulas ElseIf expande la funcionalidad de la instrucción If...Then...Else de modo que puede controlar el flujo del programa basado en diferentes posibilidades. Por ejemplo:
Sub ReportValue(valor) If value = 0 Then MsgBox value ElseIf value = 1 Then MsgBox value ElseIf value = 2 then Msgbox value Else Msgbox "Valor fuera de intervalo." End If
Puede agregar tantas cláusulas ElseIf como necesite para proporcionar opciones alternativas. El uso extensivo de las cláusulas ElseIf se convierte a menudo engorroso. Un mejor modo de elegir entre diversas alternativas es la instrucción Select Case.
La estructura Select Case proporciona una alternativa a If...Then...ElseIf para ejecutar de forma selectiva un bloque de instrucciones de entre múltiples bloques. Una instrucción Select Case proporciona capacidad similar a la de la instrucción If...Then...Else, pero hace que el código sea más eficaz y legible.
Una estructura Select Case funciona con una expresión de prueba simple que se evalúa una vez, en la parte superior de la estructura. El resultado de la expresión se compara entonces con los valores para cada instrucción Case en la estructura. Si existe una coincidencia, se ejecuta el bloque de instrucciones asociadas con dicho Case, como se muestra en el siguiente ejemplo:
Select Case Document.Form1.CardType.Options(SelectedIndex).Text Case "MasterCard" DisplayMCLogo ValidateMCAccount Case "Visa" DisplayVisaLogo ValidateVisaAccount Case "American Express" DisplayAMEXCOLogo ValidateAMEXCOAccount Case Else DisplayUnknownImage PromptAgain End Select
Tenga en cuenta que la estructura Select Case evalúa una expresión una vez en la parte superior de la estructura. En contraposición, la estructura If...Then...ElseIf puede evaluar una expresión diferente para cada instrucción ElseIf. Puede reemplazar una estructura If...Then...ElseIf con una estructura Select Case sólo si cada instrucción ElseIf evalúa la misma expresión.
Ayuda de Javascript y Vbscript para Javascripts.astalaweb.com. |