La función MAP de Excel es una nueva función propagada desde Excel 365 que está dirigida principalmente a desarrolladores o científicos. Su principal interés es optimizar la memoria para cálculos largos o complejos. En una sola fórmula podrás llenar varias líneas de tu tabla. Es gracias a esta función que construimos nuestro simulador de préstamo dinámico.
Este artículo tiene como objetivo mostrarle a través de varios ejemplos cómo se construye una función MAP en Excel y su uso.
Construcción de la función MAP.
La función MAP necesita una o más matrices (o más simplemente un rango de celdas) y realiza una operación matemática en estas matrices. La función se escribe de la siguiente manera:
- Matriz 1. Es un rango de datos o el resultado de una función. Obligatorio
- Matriz 2. Opcional
- Matriz 3. Opcional
- ...........
- Función lambda para realizar el cálculo esperado.
=MAPA(Matriz 1; Matriz 2; ...... ; LAMBDA())
La función MAP en un ejemplo muy simplista
Como primer ejemplo vamos a hacer uno sumamente sencillo, incluso poco interesante. Pero esto tendrá la ventaja de comprender la construcción de la función.
Sumaremos el valor 10 a nuestra primera serie de valores en la columna B. Ciertamente, en una situación normal de uso de Excel, escribiremos la función = B2 + 10 luego copiaremos la fórmula.

La misma situación con la función MAP se escribe de la siguiente manera (las explicaciones se dan a continuación)
=MAPA(B2:B11;LAMBDA(x;x+10))

Número elevado a 2
Si ahora, en lugar de hacer una suma queremos hacer una serie de valores elevados a la potencia de 2, nada podría ser más sencillo. Simplemente reemplace la operación x+10 en la función LAMBDA con POWER(x;2)

Optimización de la función MAP
Ahora vayamos un paso más allá. De hecho, gracias a la Función SECUENCIA, podemos reemplazar el primer argumento de la función. De hecho, en este caso, simplemente tenemos una serie de valores del 1 al 10. Que se escribe =SECUENCIA(10). Aplicado a nuestro ejemplo, podemos escribir la siguiente función para el mismo resultado

La optimización puede no ser muy visible pero es fundamental. De hecho, en lugar de crear una lista de valores en celdas, construimos la lista en la memoria. Vuelva al principio del artículo y verá que podemos usar un rango de celdas o una función como matriz.
La ventaja de utilizar una función como argumento le permite utilizar menos memoria. De hecho, una serie de células requieren más memoria debido al lado "visual". Si el diseño de la serie numérica está en la memoria, la función MAP es "más rápida".
Caso práctico de uso de la función MAP
Tomemos el caso en el que desea aplicar un aumento salarial a sus empleados. En la columna A tienes los salarios actuales y en la columna B el aumento.
Con la función MAP multiplicaremos las 2 columnas.
- La primera columna estará identificada con la letra x en la función LAMBDA
- La segunda columna estará identificada con la letra y.
- A continuación, procedemos a multiplicar los valores de las 2 columnas.

Pero también podemos introducir este resultado en una función SUMA para obtener el resultado de multiplicar cada fila. De esta forma obtenemos un resultado similar a la función SUMAPRODUCTO

Pero si queremos promediar los aumentos, entonces la combinación de los Función PROMEDIO y MAP podrá devolvernos el resultado.

Conclusión
Los ejemplos propuestos son muy sencillos y no es necesario el uso de la función MAP (excepto el último ejemplo). Pero estos ejemplos le ayudarán a comprender cómo construir matrices en la memoria para funciones complejas.
23/08/2024 a las 14:17
Hola,
En el último ejemplo, ¿usar la función MAP es fundamentalmente más útil que usar SUMPRODUCT()/COUNT() para calcular el promedio?
¿Tenemos alguna forma de evaluar la ganancia de rendimiento en comparación con otras fórmulas?
¿Podemos integrar conectores lógicos en las operaciones almacenadas en la memoria a través de la función LAMBDA?
Merci
23/08/2024 a las 15:31
No esperaba recibir comentarios tan rápido (solo 2 horas después de publicar el artículo 😁😉)
Seré honesto... no lo sé.
La función MAP está dirigida a una comunidad muy pequeña de usuarios expertos en datos avanzados. Lo averiguaré y me pondré en contacto contigo tan pronto como tenga la respuesta.