Esta función asigna un nombre a los resultados de expresión_valor
y devuelve el resultado de expresión_fórmula
.
Ejemplos de uso
LET(media, PROMEDIO(B2:D2), SI(media>=4, "Excelente", SI(media>=3, "Buena", "Deficiente")))
: clasifica un valor medio.
LET(criterios, "Fede", intervalo, FILTRO(A2:D8, A2:A8=criteria), ARRAYFORMULA(SI(ESK.ESIMO.MENOR(intervalo), "-", intervalo)))
: filtra los datos y reemplaza las celdas en blanco con un guion.
Sintaxis
LET(nombre1, expresión_valor1, [nombre2; ...], [expresión_valor2, ...], expresión_fórmula)
nombre1
: un nombre que se utiliza dentro de las siguientesexpresiones_valor
yexpresión_fórmula
. Debe ser un identificador (consulta los detalles más abajo) y no distingue entre mayúsculas y minúsculas.valor_expresión1:
fórmula cuyo resultado se puede usarse más adelante con el nombre declarado anteriormente. Puede usar nombres declarados en los parámetros anteriores.- Por ejemplo,
PROMEDIO(B2:D2)
.
- Por ejemplo,
nombre2…
: [ OPCIONAL ]nombres
repetibles y adicionales que se van a asignar.expresión_valor2…
: [ OPCIONAL ]expresiones_valor
repetibles y adicionales que se van a evaluar.expresión_fórmula
: la fórmula que se va a calcular. Utilizanombres
declarados en la funciónLET
.
Nota: Puedes usar expresión_fórmula
como nombres
definidos en el ámbito de la función LET
. Las expresiones_valor
solo se evalúan una vez en la función LET
, aunque el siguiente expresión_valor
o la expresión_fórmula
las utilicen varias veces.
Ejemplos
Categorizar el valor medio de las valoraciones de productos con LET
Datos de ejemplo:
A |
B |
C |
D |
|
---|---|---|---|---|
1 |
Producto |
Valoraciones de enero |
Valoraciones de febrero |
Valoraciones de marzo |
2 |
Camiseta roja |
3,5 |
4 |
3 |
3 |
Vaqueros negros |
4,5 |
5 |
3,5 |
4 |
Gorra |
3 |
2,5 |
2 |
Con LET: introduce esta fórmula en E2
y arrastra el cuadro azul alrededor de la celda hacia abajo para rellenar E3
y E4
.
=LET(media, PROMEDIO(B2:D2), SI(media>=4, "Excelente", SI(media>=3, "Buena", "Deficiente"))
Sin LET: introduce esta fórmula en E2
y arrastra el cuadro azul alrededor de la celda hacia abajo para rellenar E3
y E4
.
=SI(PROMEDIO(B2:D2)>=4, "Excelente", SI(PROMEDIO(B2:D2)>=3, "Buena", "Deficiente"))
Resultado:
A |
B |
C |
D |
E |
|
---|---|---|---|---|---|
1 |
Producto |
Valoraciones de enero |
Valoraciones de febrero |
Valoraciones de marzo |
Valoración media de la categoría |
2 |
Camiseta roja |
3,5 |
4 |
3 |
Buena |
3 |
Vaqueros negros |
4,5 |
5 |
3,5 |
Excelente |
4 |
Gorra |
3 |
2,5 |
2 |
Deficiente |
Filtrar datos y reemplazar una celda en blanco por un guion usando LET
Devuelve todos los datos de "Fede" y sustituye las celdas en blanco por un guion.
Datos de ejemplo:
A |
B |
C |
D |
|
---|---|---|---|---|
1 |
Representante |
Zona |
Producto |
Beneficio |
2 |
Ana |
Este |
Manzana |
1,33 $ |
3 |
Fede |
Sur |
Plátano |
0,09 $ |
4 |
Ana |
Oeste |
Mango |
1,85 $ |
5 |
Fede |
Norte |
0,82 $ |
|
6 |
Fede |
Oeste |
Plátano |
1,25 $ |
7 |
Ana |
Este |
Manzana |
0,72 $ |
8 |
Fede |
Norte |
Mango |
0,54 $ |
Con LET: escribe esta fórmula en E2
:
LET(criterios, "Fede", intervalo, FILTRO(A2:D8, A2:A8=criteria), ARRAYFORMULA(SI(ESK.ESIMO.MENOR(intervalo), "-", intervalo)))
Sin LET: escribe esta fórmula en E2
:
=ARRAYFORMULA(SI(ESBLANCO(FILTRO(A2:D8; A2:A8="Fede")), "-", FILTROS(A2:D8; A2:A8="Fede"))
Resultado:
E |
F |
G |
H |
|
---|---|---|---|---|
1 |
Representante |
Zona |
Producto |
Beneficio |
2 |
Fede |
Sur |
Plátano |
0,09 |
3 |
Fede |
Norte |
- |
0,82 |
4 |
Fede |
Oeste |
Plátano |
1,25 |
5 |
Fede |
Norte |
Mango |
0,54 |
Errores frecuentes
El argumento de nombre no es un identificadorEjemplo: =LET(B2, PROMEDIO(B2:D2), SI(B2>=4, "Excelente", IF(B2>=3, "Buena", "Deficiente")))
Si el argumento no es un identificador, se produce este error:
Requisitos de los identificadores:
- No pueden ser intervalos, como "A1" o "A2".
- No pueden incluir espacios ni caracteres especiales.
- No pueden empezar por números, como "9hola".
En una expresión_valor
de la función LET
, esta sintaxis permite utilizar los argumentos con nombre que ya se han declarado anteriormente. Por ejemplo, "a la izquierda en la función".
Ejemplo:
LET(x, 1, y, LET(z, 2, x+z), x+y) |
CORRECTA: se ha declarado x antes de usarla en la función LET interior. |
---|---|
LET(y, LET(z, 2, x+y), x, 1, x+y) |
INCORRECTA: usa x antes de la declaración. |
Si utilizas un argumento antes de declararlo, se produce este error: