Evalúa una expresión y ejecuta una serie de instrucciones en función del resultado.
Sintaxis
If Condición Then
[Instrucciones]
[ElseIf Condición-n Then
[InstrucciónElseIf]] . . .
[Else
[InstrucciónElse]]
End
La sintaxis de la instrucción If...Then...Else...End se compone de las siguientes partes:
Parte |
Descripción |
|---|---|
Condición |
Una expresión que devuelve TRUE, FALSE o cualquier valor escalar numérico. Con un resultado numérico, todos los valores distintos de cero se interpretan como TRUE. |
Instrucciones |
Una o más instrucciones que se ejecutan si la condición tiene el valor TRUE. |
Condición-n |
Mismo significado que Condición. |
InstrucciónElseIf |
Una o más instrucciones que se ejecutan si la condición correspondiente (Condición-n) es TRUE. |
InstrucciónElse |
Una o más instrucciones que se ejecutan si ninguna de las condiciones (Condición o condición-n) da como resultado el valor TRUE. |
Notas
Cuando se ejecuta un bloque If, primero se comprueba la Condición. Si la condición devuelve el valor TRUE, las instrucciones se ejecutan después de Then. Si la condición devuelve el valor FALSE, las condiciones ElseIf (si existen) se evalúan una tras otra. Si una de esas condiciones es TRUE, las instrucciones se ejecutan después del Then correspondiente. Si ninguna de las condiciones ElseIf da como resultado el valor TRUE (o si no hay ninguna sección ElseIf), las instrucciones se ejecutan después de Else. Una vez ejecutadas las instrucciones después de una sección Then o Else, el programa continúa la ejecución con la instrucción siguiente a End.
Las secciones Else y ElseIf son opcionales. Puede utilizar cualquier número de secciones ElseIf en un bloque If; no se permiten secciones ElseIf después de una sección Else. Los bloques If pueden anidarse (es decir, contener a su vez bloques If).
Disponibilidad
FlexPro View, Basic, Professional, Developer Suite
Ejemplo
El siguiente ejemplo limita todos los valores de una señal al intervalo [-5, 5]. Corresponde a Clip(Signal, -50., 5.).
Arguments Signal
For Each Row i In Signal Do
If Signal.Y[i] > 5 Then
Signal.Y[i] = 5
ElseIf Signal.Y[i] < -5 Then
Signal.Y[i] = -5
End
End
Signal