Este tutorial presenta la nueva función LET de Excel que hace que las fórmulas complejas parezcan más comprensibles y se calculen más rápido.
Si trabaja con fórmulas largas en Excel, seguramente estará familiarizado con la idea de los rangos con nombre que hacen que las fórmulas complejas sean más fáciles de leer. Y ahora, Microsoft da un paso más y permite asignar nombres a cálculos y valores directamente en una fórmula. Si su fórmula usa la misma expresión varias veces, puede dejar que Excel la calcule solo una vez, almacenar el resultado dentro de una fórmula y reutilizarla tantas veces como sea necesario. Suena emocionante, ¿no?
Función LET de Excel
La función LET de Excel le permite asignar nombres a los resultados de los cálculos y definir variables dentro de una fórmula, para que la fórmula se vea más clara y funcione más rápido.
Esencialmente, el concepto es el mismo que nombrar celdas, rangos y fórmulas en el Administrador de nombres. Lo que hace que la función LET sea diferente es que los nombres declarados solo existen en el ámbito de una fórmula determinada y en ningún otro lugar.
Sintaxis
LET tiene la siguiente sintaxis y argumentos:
LET (nombre1, nombre_valor1, [name2], [name_value2]…, cálculo)
Dónde:
- Nombre1 (requerido) – el primer nombre a asignar. Debe comenzar con una letra.
- Nombre_valor1 (requerido) – el valor o cálculo asignado a nombre1.
- Nombre2 / nombre_valor2 (opcional) – el segundo nombre y valor.
- Cálculo (obligatorio): un cálculo que utiliza nombres y valores asignados.
La función puede procesar hasta 126 pares de nombre/valor.
Nota. Microsoft usa una notación de sintaxis ligeramente diferente:
LET(name1, name_value1, calculation_or_name2, [name_value2, calculation_or_name3…])
Personalmente, lo encuentro un poco confuso, así que lo puse en una forma más habitual. Básicamente, hablan de lo mismo pero de diferentes maneras.
Disponibilidad
La función LET solo está disponible en las suscripciones de Microsoft 365, que incluyen:
- Excel 365 (para Windows y Mac)
- Excel 2021 (para Windows y Mac)
- excel para la web
Fórmula LET básica
Si aún no tiene una comprensión clara de la función, un ejemplo de la fórmula LET en su forma más simple lo ayudará a enfocar los elementos esenciales.
Considere esta simple expresión: x+y. Aquí, tenemos 2 variables, x e y. Asignemos el valor 2 a x, el valor 5 a y y multipliquemos uno por el otro:
=LET(x, 2, y, 5, x*y)
Ingrese esta fórmula en una celda y devolverá 10 como resultado.
En lugar de valores, las variables se pueden asignar a referencias de celda, digamos x a B2 e y a B3:
=LET(x,B2, y, B3, x * y)
Para facilitar la creación de una fórmula, los nombres ya declarados aparecen en la lista desplegable de intellisense, al igual que los nombres definidos en el administrador de nombres.
Al observar la fórmula anterior, es posible que se pregunte, ¿cuál es el punto de complicar demasiado las cosas? ¿Por qué no poner simplemente:
=B2*B3
En este caso particular, una multiplicación normal es, por supuesto, más simple. El propósito es aclarar el concepto. Cuando se trata de fórmulas más complejas con cálculos repetidos, la función LET adquiere un nuevo grado de utilidad como se demuestra en el más ejemplos.
Ventajas
Si aún duda de que LET sea una valiosa adición a su caja de herramientas de Excel, considere estos beneficios:
fórmulas simplificadas. Dar nombres descriptivos a las variables y los cálculos intermedios facilita la comprensión de lo que realmente está haciendo la fórmula. Ya no necesita descubrir la lógica interna de cada expresión o referencia específica en una fórmula.
Cálculos más rápidos. Cuando la misma expresión se repite varias veces en una fórmula, Excel la calcula varias veces. Cuando se hace referencia a la expresión por su nombre, Excel la calcula solo una vez. Como resultado, una hoja de cálculo completa se vuelve a calcular mucho más rápido. Este efecto positivo en el rendimiento es especialmente notable en el caso de fórmulas largas y grandes conjuntos de datos.
Facil mantenimiento. El uso de nombres para cálculos repetidos no solo hace que las fórmulas sean más compactas sino también más fáciles de actualizar. Cuando se necesitan ajustes, realiza un solo cambio en lugar de actualizar las mismas expresiones varias veces, lo que ahorra tiempo y reduce los errores humanos.
Notas de uso
Para acortar la curva de aprendizaje y evitar errores comunes, siga estas sencillas instrucciones:
- Una fórmula LET debe tener un número impar de argumentos: uno o varios pares de nombre/valor y un cálculo. El último argumento siempre debe ser un cálculo que devuelva el resultado final.
- En sus fórmulas, siga las mismas reglas de nomenclatura que en el administrador de nombres, es decir, comience con una letra, sin espacios, sin signos de puntuación, etc.
- Para evitar confusiones, evite declarar nombres que ya se utilizan en el administrador de nombres. Si se asigna el mismo nombre dentro de LET y se define en el administrador de nombres, se ignorará la versión del administrador de nombres.
- Los nombres declarados con LET solo son válidos en el ámbito de esa fórmula en particular.
Cómo usar la función LET en Excel – ejemplos de fórmulas
Y ahora, es hora de ver casos de uso más realistas y revelar todo el poder de la nueva función.
Ejemplo 1. Fórmula LET para reducir cálculos repetidos
Al escribir fórmulas de varios niveles, a menudo sucede que la misma expresión o cálculo se usa más de una vez. Un ejemplo típico son las declaraciones IF anidadas. En este contexto, veamos cómo LET puede simplificar las cosas.
Supongamos que tiene los resultados de los exámenes de los estudiantes en tres materias diferentes (columnas B, C y D). Desea encontrar un promedio para cada estudiante y calificarlo como se muestra en la tabla de la derecha:
La función PROMEDIO puede calcular fácilmente una media aritmética para cada fila:
AVERAGE(B2:D2)
Y luego, crea una declaración IF anidada basada en los criterios anteriores.
=IF(AVERAGE(B2:D2)>249, "Excellent", IF(AVERAGE(B2:D2)>=200, "Good", IF(AVERAGE(B2:D2)>150, "Satisfactory", "Poor")))
El problema es que la misma función PROMEDIO se repite tres veces. Bueno, tal vez no sea realmente un problema, sino una complicación innecesaria que obliga a Excel a realizar el mismo cálculo tres veces.
Para optimizar la fórmula, podemos asignar un nombre a la función PROMEDIO (por ejemplo, avg) y reemplazar la función con este nombre «local». De esta manera, se calcula un promedio solo una vez, lo que ayuda a que la fórmula se ejecute más rápido:
=LET(avg, AVERAGE(B2:D2), IF(avg>249, "Excellent", IF(avg>=200, "Good", IF(avg>150, "Satisfactory", "Poor"))))
Ingrese la fórmula en E2, arrástrela hacia abajo a través de E10 y obtendrá este resultado:
Imagine que agrega un examen más (columna E) a la tabla de origen. Naturalmente, desea incluir eso en el promedio. Sin LET, tendría que realizar este ajuste en la prueba lógica de cada función IF. Siendo un ser humano, puede pasar por alto algo y no actualizar todas las referencias correctamente. Con LET, solo haces un único cambio:
=LET(avg, AVERAGE(B2:E2), IF(avg>249, "Excellent", IF(avg>=200, "Good", IF(avg>150, "Satisfactory", "Poor"))))
Ejemplo 2. LET con varios nombres
Aquí hay otro ejemplo que muestra cómo la función LET puede facilitar la creación de fórmulas complejas.
Supongamos que tiene una lista de nombres completos (columna A) de la que desea extraer los segundos nombres. La siguiente fórmula hace el trabajo a la perfección, pero a primera vista su lógica es bastante oscura:
=MID(A2, SEARCH(" ", A2) + 1, SEARCH(" ", A2, SEARCH(" ", A2) +1) - SEARCH(" ", A2) - 1)
Para proporcionar un contexto significativo para usted y otros usuarios, puede definir un par de nombres como:
- nombre_completo – A2
- espacio – BUSCAR(» «, nombre_completo)
Obviamente, la celda A2 contiene un nombre completo que debe dividirse, y la función BUSCAR devuelve la posición del primer carácter de espacio en el nombre.
Y luego, reemplazamos la referencia de celda y la función BUSCAR con los nombres declarados.
=LET(full_name, A2, space, SEARCH(" ", full_name), MID(full_name, space + 1, SEARCH(" ", full_name, space + 1) - space - 1))
Si está familiarizado con la sintaxis MID, la fórmula se vuelve mucho más fácil de comprender:
A la posición del primer espacio, agrega 1 para comenzar la extracción desde el siguiente carácter (espacio + 1). Para obtener la longitud del segundo nombre (es decir, cuántos caracteres extraer del nombre completo), determina la posición del segundo espacio anidando una función de BÚSQUEDA en otra, luego encuentra la diferencia entre las posiciones de los dos espacios y resta 1 del resultado para eliminar un espacio final (SEARCH(» «, nombre_completo, espacio+1) – espacio -1)).
Para una mejor legibilidad, puede deformar los nombres y el cálculo en líneas separadas como esta:
Ejemplo 3. Función LET con arreglos dinámicos
En los ejemplos anteriores, la función LET operaba en una sola celda y copiamos la fórmula en las celdas siguientes. Sin embargo, LET también puede aceptar arreglos como entrada y producir arreglos como salida. Esto es posible gracias al nuevo motor de cálculo y matrices dinámicas de Excel 365.
De la siguiente tabla, suponga que desea obtener una lista de los exámenes que se realizarán en los próximos n días, sin incluir el día de hoy. Esto se puede hacer usando la función FILTRO con múltiples criterios:
FILTER(data, (dates>today) * (dates<=today+n), "No results")
Todo lo que necesita hacer es definir los nombres correspondientes:
- datos – A2:C19
- fechas – C2:C19
- hoy – HOY()
- n – F3
Después de eso, ponga los nombres y la fórmula de FILTRO dentro de LET:
=LET(data, A2:C19, dates, C2:C19, today, TODAY(), n, F3, FILTER(data, (dates>today) * (dates<=today+n), "No results"))
El resultado es una matriz de registros que coinciden con los criterios especificados:
La función LET de Excel no funciona
Si no puede encontrar la función LET en su Excel o su fórmula da como resultado un error, eso puede suceder debido a las siguientes razones:
No hay función LET en mi Excel
En el momento de escribir este artículo, la función LET solo está disponible para Office Insiders. Cuando se complete la etapa beta, se lanzará a todos los suscriptores de Microsoft 365. La función no es compatible con versiones anteriores y no aparecerá en versiones anteriores de Excel.
#¿NOMBRE? error
Como existe una posibilidad muy pequeña de que alguien escriba mal el nombre de la función, lo más probable es que el problema esté relacionado con los nombres asignados. Asegúrese de haber declarado cada nombre utilizado en el cálculo y de que todos los nombres estén escritos correctamente.
Así es como puede simplificar y acelerar sus cálculos con la ayuda de la función LET. ¡Gracias por leer y espero verte en nuestro blog la próxima semana!
(archivo .xlsx)