Let

Establece una variable o variables en el resultado de las expresiones especificadas durante el cálculo o hasta que se finalice el guión o se cierre el archivo.

Formato 

Let ( {[} var1 = expresión1 {; var2 = expresión2...]} ; cálculo )

Parámetros 

var: cualquier nombre de variable (consulte Usar variables).

expresión: cualquier expresión, campo o constante de cálculo.

cálculo: cualquier expresión, campo o constante de cálculo.

Los parámetros entre llaves { } son opcionales.

Tipo de datos devuelto 

texto, número, fecha, hora, fecha y hora, contenedor

Se origina en 

7.0

Descripción 

La función Let permite asignar los resultados de las expresiones a variables y devolver un resultado que puedan utilizar esas variables. Utilice Let para simplificar la lectura de fórmulas complejas al reducir la necesidad de llamar a funciones en funciones. Let también puede hacer que las fórmulas sean eficaces almacenando en variables el resultado de las llamadas a funciones para su reutilización dentro de la fórmula, y así reducir las llamadas a funciones innecesarias.

Para asignar varias variables a una función Let, utilice la sintaxis de lista entre corchetes [ ] y separadas por punto y coma. Para simplificar la lectura de varias variables, puede incluir cada variable y el cálculo devuelto en líneas independiente, aunque ese formato no es necesario. Por ejemplo:

Copiar
Let ( [
    variable = valor;
    variable2 = valor2
];
cálculo )

La función Let define las variables de izquierda a derecha. Puede usar variables definidas previamente (por ejemplo, variable de función definida previamente en la función Let o variableslocales y globales que haya definido con el paso de guión Establecer variable) para definir nuevos valores de variables.

También puede anidar una función Let dentro de otra. Si utiliza una variable de función definida previamente dentro de una función Let anidada, la variable de función solo influye en la función anidada (como si hubiera definido una variable absolutamente única). Consulte el ejemplo 2 mostrado a continuación.

Una vez definidas, se puede hacer referencia a las variables en cualquier cálculo de su alcance. Las variables locales definidas en un cálculo están dentro del alcance del archivo, pero sólo están disponibles cuando los guiones no se están ejecutando. Consulte Usar variables.

Ejemplo 1 

Let ( x = 5; x*x ) devuelve 25.

Let ( [ x = 5; cuadrado = x*x; cubo = cuadrado *x ]; cubo ) devuelve 125.

Ejemplo 2

Este ejemplo devuelve San Francisco - París.

Copiar
Let (
    Ciudad = "París";
    Let (
        Ciudad = "San Francisco";
        Ciudad & " - "
    )
& Ciudad )

Ejemplo 3 

En este ejemplo se establece una variable local en el conjunto de privilegios del acceso a la cuenta actual y se devuelve el contenido de la variable. Si este cálculo se utiliza en un guión, la variable local estará disponible durante la duración del mismo.

Let ( $PRIVILEGE_SET = Get ( AccountPrivilegeSetName ) ; $PRIVILEGE_SET ) devuelve [Full Access] si se evalúa mediante una cuenta con el conjunto de privilegios de acceso total.

Ejemplo 4 

Este ejemplo establece una variable local contador a 50 repeticiones con un valor de 120:

Let ( $contador [50] = 120; $contador [50]*2 ) devuelve 240.

Ejemplo 5 

En este ejemplo, se muestra cómo llevar parámetros designados con las funciones Evaluate, Let y Get ( ScriptParameter ) permitiendo el acceso solo a la variable "a" (el ejemplo devuelve 6):

ScriptParameter = "a = 5; b = 10"

Copiar
Evaluate ( 
    "Let ( [" 
        & Get ( ScriptParameter ) & "
    ]; 
    a+1 )" 
)

Ejemplo 6 

En este ejemplo, se muestra cómo se llevan parámetros con nombre, permitiendo el acceso tanto a la variable "a" como a la "b". El primer parámetro simplificado hace que el segundo sea más complejo (el ejemplo devuelve 6, 12):

ScriptParameter = "a = 5; b = 10"

Copiar
Evaluate ( 
    "Let ( ["
        & Get ( ScriptParameter ) & "
    ];
    a+1 & \", \" & b+2 )" 
)

Ejemplo 7 

En este ejemplo, se muestra cómo transferir parámetros con nombre, manteniendo la capacidad de comprobar la sintaxis del segundo parámetro de la función Let (el ejemplo devuelve 6, 12):

ScriptParameter = "a = 5; b = 10"

Copiar
Let ( [
    a = Evaluate ( 
        "Let ( ["
            & Get ( ScriptParameter ) & "
        ];
        a )" 
    ),
    b = Evaluate ( 
        "Let ( ["
            & Get ( ScriptParameter ) & "
        ];
        b )"
    )
]; 
a+1 & ", " & b+2 )