Saltar navegación

Documentación de FlexPro 2025

Si...Entonces...Si no

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

 

Véase también

Función Conditional