Limitación de BYCOL: cómo obtener múltiples valores por columna

Surge una duda sobre por qué una fórmula aparentemente simple con BYCOL genera error. El usuario intenta obtener los 5 mayores valores de cada columna de un rango numérico:

``
=APILARH(BYCOL(A1:X100; LAMBDA(col; K.ESIMO.MAYOR(col; {1;2;3;4;5}))))
`

Leo identifica el problema rápidamente: BYCOL no es capaz de devolver más de un elemento por columna. Para que funcione, la función LAMBDA debe producir un único valor escalar por cada columna procesada.

Gerson propone una solución ingeniosa usando UNIRCADENAS para consolidar los valores en un solo texto separado por comas:

`
=APILARH(BYCOL(A1:X100;LAMBDA(col;UNIRCADENAS(",";; K.ESIMO.MAYOR(col;{1;2;3})))))
`

Y si solo se necesita un valor por columna (por ejemplo el máximo), la fórmula se simplifica enormemente:

`
=BYCOL(A1:X100;MAX)
`

Gerson también señala que en el caso de querer un solo valor, el APILARH es innecesario. Leo menciona REDUCE como alternativa para los casos en que se necesiten múltiples resultados por columna sin la limitación de BYCOL.

Un caso útil para entender las limitaciones de las funciones BYROW y BYCOL` (ambas devuelven un único valor por iteración) y las alternativas disponibles.

Más contenido de Excel en InflueXcel