🚀The world's best VBA AI has evolved. ExcelMaster is now an autonomous Agent.Read more →
Back to Blog

Función LET de Excel — Da nombre a tus variables para fórmulas legibles y más rápidas

|

Función LET de Excel — Da nombre a tus variables para fórmulas legibles y más rápidas

TL;DRLET declara variables con nombre dentro de una misma fórmula: =LET(nombre1, valor1, nombre2, valor2, …, resultado). Los nombres van en pares, el resultado es siempre el último argumento, y Excel calcula cada valor con nombre una sola vez — así que LET es a la vez más legible y más rápida que repetir una subexpresión. Excel 365 y 2021+.

=LET(revenue, B2, cost, C2, margin, (revenue-cost)/revenue, margin)
=LET(total, SUMIF(A:A,G1,B:B), IF(total>0, total, "none"))   ' recorre la columna una vez, no dos

Una fórmula larga de Excel es un pequeño programa sin variables: cada valor se calcula en línea, a menudo más de una vez, y nada tiene un nombre. LET añade las primeras líneas que le faltan a ese programa: un sitio donde declarar tus variables antes de usarlas. La recompensa es doble: una fórmula que puedes leer y, además, una que a menudo se ejecuta más rápido.

Lo que vas a aprender

  • El modelo mental que hace que LET encaje: la cabecera de una función, donde declaras las variables
  • La única regla que rompe LET: nombres en pares, cálculo al final — y el error que aparece cuando te la saltas
  • Por qué LET es una herramienta de rendimiento, no solo de legibilidad (cada valor se calcula una sola vez)
  • Cuándo recurrir a LET — y las trampas al nombrar (A1 no es un nombre válido)

El modelo mental: LET es donde declaras tus variables

Piensa en la cabecera de cualquier función en un lenguaje de programación de verdad: das nombre a unas cuantas cosas y luego las usas. LET trae eso a una celda. La forma nunca cambia: pares nombre/valor y, al final, un único cálculo que los usa:

=LET(name1, value1, name2, value2, calculation)

Se lee de arriba abajo: "sea rate igual a 0,2, sea net igual a A2-B2, y entonces devuelve net * rate." En cuanto ves LET como declaraciones seguidas de un resultado, se deducen tres cosas:

  1. Un nombre que defines puedes reutilizarlo tantas veces como quieras en el cálculo final — pero Excel evalúa su valor una sola vez.
  2. Los nombres se construyen de arriba abajo: un nombre posterior puede referirse a uno anterior, nunca al revés.
  3. El último argumento es la respuesta. Todo lo que va antes viene en pares nombre/valor.

La regla que rompe LET: pares y luego el resultado

Este es el error de LET más común con diferencia. Cada argumento anterior al último debe ser un par nombre/valor. Cuéntalos: nombre, valor, nombre, valor, … , resultado. Un número par de argumentos antes del cálculo y, después, un único cálculo para cerrar.

=LET(x, 10, y, 20, x+y)      ' dos pares y luego el resultado -> 30
=LET(x, 10, y, 20)           ' sin cálculo final -> devuelve 20, no lo que querías
=LET(x, 10, x*2, y, x+y)     ' "x*2" se interpreta como un nombre -> error

Si tu LET devuelve un número que se parece a uno de tus datos de entrada, casi con total seguridad olvidaste el cálculo final y Excel te devolvió tu último valor. Si obtienes #VALUE! o #NAME?, lo más probable es que pusieras el cálculo en mitad o usaras un nombre no válido.

Trampas al nombrar:

  • Un nombre no puede parecer una referencia de celdaA1, R2, Q4 se rechazan todos. Usa qtr4, no Q4.
  • Los nombres no pueden contener espacios ni empezar por un número.
  • Un nombre puede referirse a nombres anteriores pero no a sí mismo ni a uno posterior — declara en el orden que necesites.

Por qué LET es en realidad una herramienta de rendimiento

La legibilidad es la ventaja evidente. La oculta es la velocidad. Excel evalúa cada valor con nombre una única vez, sin importar cuántas veces lo referencies. Compara:

=IF(SUMIF(A:A,G1,B:B)>0, SUMIF(A:A,G1,B:B), "none")

Ese SUMIF sobre una columna entera se ejecuta dos veces. En una hoja grande con cientos de fórmulas así, eso duplica el trabajo. Envuélvelo una vez:

=LET(total, SUMIF(A:A,G1,B:B), IF(total>0, total, "none"))

Ahora el recorrido de la columna ocurre una sola vez. Esta es la verdadera razón por la que los usuarios avanzados envuelven en LET las subexpresiones que se repiten: no por orden, sino para reducir el recálculo a la mitad (o más). La regla práctica: si una subexpresión aparece más de una vez en tu fórmula, su sitio es un LET.

Da nombre a cada paso de una cadena de matrices dinámicas

LET brilla dentro de las fórmulas modernas de desbordamiento (spill). Dar nombre a cada etapa convierte un anidamiento opaco en algo que puedes leer — y depurar línea a línea:

=LET(
   data, FILTER(Sales, Sales[Region]="West"),
   top,  SORT(data, 3, -1),
   TAKE(top, 5)
)

Cada nombre es un punto de control: selecciona data en la barra de fórmulas y pulsa F9 para ver solo esa etapa. Combinado con FILTER (FILTRAR), SORT (ORDENAR) y TAKE (TOMAR), LET es lo que mantiene honesta una consulta de cinco pasos.

El criterio: LET se queda en una celda — más allá de eso, quieres LAMBDA

Situación Usa Por qué
Una subexpresión se repite en una fórmula LET Se calcula una vez, no N veces
Una fórmula anidada que nadie puede leer LET Da nombre a los pasos; depura cada línea
Vas a reutilizar la lógica en otras celdas o libros LAMBDA LET es por fórmula; LAMBDA se puede invocar
Una fórmula trivial de un solo paso Ninguna LET añade ruido sin ninguna ventaja

LET vive dentro de una fórmula. En cuanto quieras invocar la misma lógica desde muchas celdas — o desde otro libro — te has quedado pequeño con LET y quieres LAMBDA. De hecho, el cuerpo de casi todo buen LAMBDA es un LET. Tampoco recurras a LET en una fórmula de un solo paso; ponerle nombre a =A1*2 no ayuda a nadie.

Cómo ayuda ExcelMaster

LET es donde las fórmulas de Excel empiezan a leerse como código — y el código es justo lo que un copiloto de IA sabe escribir bien. ExcelMaster coge una fórmula anidada larga e ilegible y la refactoriza en un LET limpio con pasos con nombre, dentro de Excel — y detecta la subexpresión repetida que solo debería calcularse una vez. Describe el cálculo en lenguaje natural y te devuelve el LET, con nombres y todo. Pruébalo con tus propios datos.

Preguntas frecuentes

¿Qué hace la función LET en Excel?

LET declara variables con nombre dentro de una sola fórmula, de modo que puedes escribir =LET(nombre, valor, …, resultado) en lugar de repetir subexpresiones. Hace la fórmula legible y calcula cada valor con nombre una sola vez.

¿Por qué mi fórmula LET devuelve un valor equivocado?

Casi siempre porque el último argumento no es tu cálculo. Todo lo anterior al argumento final debe ser pares nombre/valor; el argumento final es el resultado. =LET(x,10,y,20) devuelve 20 porque no hay ningún cálculo después de los pares.

¿LET hace que las fórmulas sean más rápidas?

Sí, cuando una subexpresión se repite. Excel evalúa cada valor con nombre una sola vez, así que =LET(t, SUMIF(A:A,G1,B:B), IF(t>0,t,0)) recorre la columna una única vez en lugar de dos. En hojas grandes esto es una mejora de velocidad real, no solo un texto más limpio.

¿Por qué me da un error #NAME? en LET?

Usaste un nombre no válido. Los nombres no pueden parecer una referencia de celda (A1, Q4), no pueden contener espacios y no pueden empezar por un número. Renómbralo a qtr4, rate o net_sales.

¿Qué versiones de Excel admiten LET?

LET está en Excel 2021, Excel 2024 y Microsoft 365 para Windows y Mac. No está disponible en Excel 2016 ni 2019.

Probado en

Probado en: Excel 365 (Windows 11): última verificación el 22/06/2026.

Guías relacionadas: Excel LAMBDA · Excel MAP, REDUCE y BYROW · Excel FILTER · Excel SORT