Esta función devuelve una matriz de dimensiones especificadas con valores calculados aplicando una función LAMBDA.
Ejemplo de uso
MAKEARRAY(2; 3; LAMBDA(índice_fila; índice_columna; índice_fila+índice_columna))
MAKEARRAY(2; 3: LAMBDA(índice_fila; índice_columna; índice_fila*índice_columna))
Sintaxis
MAKEARRAY(filas; columnas; LAMBDA)
Filas: número de filas que se van a devolver.Columnas: número de columnas que se van a devolver.LAMBDA: una funciónLAMBDAque se aplica para crear la matriz.- Sintaxis:
LAMBDA(nombre1; nombre2; expresión_fórmula) - Requisitos:
- La función
LAMBDAdebe tener exactamente dos argumentosnombrey unaexpresión_fórmulaque use esosnombres. Cuando se aplica la funciónLAMBDA,nombre1se resuelve en elíndice_filaynombre2se resuelve en elíndice_columna.
- La función
- Sintaxis:
Notas
-
La función
LAMBDAenviada debe aceptar exactamente dos argumentosnombre. Si no, se devuelve un error#N/A. Estos argumentos se corresponden coníndice_filaeíndice_columna, en este orden. Es decir:nombre1: se resuelve en elíndice_filapara el que se haya creado un valor.nombre2: se resuelve en elíndice_columnapara el que se haya creado un valor.
- El valor creado por la función
LAMBDAque se aplica a los índices debe ser un valor único. No se admiten resultados de matriz de los valores creados. índice_filaeíndice_columnaempiezan desde 1.- En este caso, una
función con nombrepuede pasar por parámetroLAMBDAy comportarse como una funciónLAMBDA. Más información sobre las funciones con nombre- La
función con nombredebe utilizar la sintaxisLAMBDAdeMAKEARRAYy tener definidos exactamente dos marcadores de posición de argumentos. - La
función con nombreno debe ir seguida de un paréntesis.
- La
Ejemplos
Devuelve una matriz de 2 por 3 con un valor de celda de índice_fila*índice_columna
Ejemplo: =MAKEARRAY(2; 3; LAMBDA(índice_fila; índice_columna; índice_fila*índice_columna))
Resultado:
|
1 |
2 |
3 |
|
2 |
4 |
6 |
Devuelve una matriz de 2 por 3 con números aleatorios entre 1 y 100
Ejemplo: =MAKEARRAY(2; 3; LAMBDA(índice_fila; índice_columna; ALEATORIO.ENTRE(1;100)))
Resultado:
|
53 |
70 |
38 |
|
6 |
47 |
78 |
En este ejemplo, la función crea una matriz aleatoria de 2 por 3 con un número entre 1 y 100 para cada celda.
Usa una función con nombre como LAMBDA para devolver una matriz de 4 por 4
Usa una función con nombre como LAMBDA para devolver una matriz de 4 por 4 con datos en formato de cascada. Donde el valor de una fila adicional es igual al valor de la fila anterior +1, dado que el valor inicial es de 100 en la fila 1.
Función con nombre: WATERFALL es una función con nombre que genera un valor de 100 + índice_fila - 1 si el índice_fila de la celda es menor o igual al índice_columna. Si no, deja la celda en blanco.
Definición de la fórmula: =si(índice_fila<=índice_columna; 100+índice_fila-1; ""), donde índice_fila e índice_columna son marcadores de posición de argumentos definidos para WATERFALL.
Ejemplo: =MAKEARRAY(4;4;WATERFALL)
Resultado:
|
100 |
100 |
100 |
100 |
|
101 |
101 |
101 |
|
|
102 |
102 |
||
|
103 |
Usa una función con nombre como LAMBDA para calcular el número de empleados
Usa una función con nombre como LAMBDA para calcular el número de empleados que se han incorporado en un trimestre concreto de un año determinado.
Datos de ejemplo:
|
A |
B |
C |
D |
E |
F |
G |
H |
|
|---|---|---|---|---|---|---|---|---|
|
1 |
2020 |
Juan;Adrián;Estefanía;Miguel;Pedro;Cecilia;Mariano;Esteban |
T1 |
T2 |
T3 |
T4 |
||
|
2 |
2021 |
Natalia;Marcos;Alicia;Luna;César;Cristina;Carlos |
2020 |
|||||
|
3 |
2021 |
|||||||
|
4 |
||||||||
|
5 |
T1 |
Juan;Adrián;Natalia;Marcos |
||||||
|
6 |
T2 |
Estefanía;Miguel;Pedro;Alicia |
||||||
|
7 |
T3 |
Cecilia;Luna;César;Cristina |
||||||
|
8 |
T4 |
Mariano;Esteban;Carlos |
En la matriz A1:B2, se encuentran los empleados que se han incorporado en un año determinado. En la matriz A5:B8, están los empleados que se han incorporado en un trimestre concreto. Hay que rellenar la matriz E2:H3 con el número de empleados que se han incorporado en un año y un trimestre concretos.
Función con nombre: FIND_COMMON_EMPLOYEES_COUNT es una función con nombre que devuelve el recuento de empleados comunes a partir de un índice con el año y el número del trimestre.
Definición de la fórmula: =CONTAR(ARRAYFORMULA(COINCIDIR(SPLIT(ÍNDICE(Hoja1!$B$5:$B$8: no_trimestre););"); SPLIT(ÍNDICE(Hoja1!$B) $1:$B$2; índice_año); ";"); 0))). Índice_año y no_trimestre, en ese orden, son marcadores de posición de argumentos definidos para FIND_COMMON_EMPLOYEES_COUNT.
Ejemplo: Introduce esta fórmula en E2: =MAKEARRAY(2; 4; FIND_COMMON_EMPLOYEES_COUNT)
Resultado:
|
A |
B |
C |
D |
E |
F |
G |
H |
|
|---|---|---|---|---|---|---|---|---|
|
1 |
2020 |
Juan;Adrián;Estefanía;Miguel;Pedro;Cecilia;Mariano;Esteban |
T1 |
T2 |
T3 |
T4 |
||
|
2 |
2021 |
Natalia;Marcos;Alicia;Luna;César;Cristina;Carlos |
2020 |
2 |
3 |
1 |
2 |
|
|
3 |
2021 |
2 |
1 |
3 |
1 |
|||
|
4 |
||||||||
|
5 |
T1 |
Juan;Adrián;Natalia;Marcos |
||||||
|
6 |
T2 |
Estefanía;Miguel;Pedro;Alicia |
||||||
|
7 |
T3 |
Cecilia;Luna;César;Cristina |
||||||
|
8 |
T4 |
Mariano;Esteban;Carlos |
Errores frecuentes
La función LAMBDA enviada no tiene exactamente dos argumentos nombreSi la función LAMBDA no tiene dos argumentos nombre, se produce este error:
"Número incorrecto de argumentos para LAMBDA. Se esperaban tres argumentos, pero se han obtenido dos".
Ejemplo: =MAKEARRAY(2; 3; LAMBDA(valor_actual; valor_actual+1))
En este ejemplo, LAMBDA solo tiene un argumento nombre cuando se necesitan dos.
Si el último parámetro de MAKEARRAY no es una LAMBDA, se produce este error:
“El argumento debe ser una LAMBDA”.
Ejemplo: =MAKEARRAY(2; 3; 3)
Si el valor de LAMBDA que se ha enviado a MAKEARRAY no era correcto en los argumentos nombre, se produce este error:
“El argumento 1 de la función LAMBDA no es un nombre válido”.
Ejemplo: =MAKEARRAY(2;3; LAMBDA(C1; v; C1*v))
En este ejemplo, C1 no es un nombre válido porque entra en conflicto con un intervalo.
Si la LAMBDA aplicada en la fila y en la columna genera varios valores, se produce este error:
“Se esperaba un solo valor. No se admiten resultados de matriz anidados”.
Ejemplo: =MAKEARRAY(2;3; LAMBDA(i; j; {i; j} ))
Todas las aplicaciones de LAMBDA en índice_fila e índice_columna deben generar un valor que sea un valor único, no otra matriz.
Funciones relacionadas
- Función LAMBDA: esta función te permite generar y devolver una función personalizada con un conjunto de
nombresy unaexpresión_fórmulaque los utiliza. - Función MAP: esta función asigna cada valor de las matrices a un nuevo valor.
- Función REDUCE: esta función reduce una matriz a un resultado acumulado.
- Función BYROW: esta función agrupa una matriz por filas.
- Función BYCOL: esta función agrupa una matriz por columnas.
- Función SCAN: esta función analiza una matriz y genera valores intermedios.
- Crear y usar funciones con nombre: esta función te permite crear y almacenar funciones personalizadas de forma similar a LAMBDA.