function

BYROW

Todo sobre la función BYROW en Excel

La función BYROW aplica una función LAMBDA a cada fila de un rango o matriz especificada y devuelve una matriz con los resultados. Es una de las funciones de ayuda de LAMBDA, diseñada para simplificar el procesamiento de datos por filas, evitando la necesidad de arrastrar fórmulas manualmente.

Esta función es ideal para realizar cálculos fila por fila, como sumar los valores de cada una, encontrar el valor máximo, o aplicar lógicas más complejas definidas dentro de la función LAMBDA.

Sintaxis

=BYROW(matriz, lambda(fila))

La función BYROW tiene los siguientes argumentos:

  • matriz: La matriz o rango que se va a procesar fila por fila. Obligatorio.
  • lambda: Una función LAMBDA que se aplicará a cada fila de la matriz. Esta función LAMBDA debe aceptar un único parámetro que representará una fila de la matriz. Obligatorio.

Ejemplos

Ejemplo 1: Sumar los valores de cada fila

Para el siguiente rango de datos, queremos calcular la suma total de ventas para cada trimestre (cada fila).

A B C
1 Producto Ventas Ene Ventas Feb
2 Producto A 150 200
3 Producto B 120 180
4 Producto C 250 210
=BYROW(B2:C4, LAMBDA(fila, SUMA(fila)))

Resultado: La función devolverá una matriz vertical con la suma de cada fila: {350; 300; 460}. Excel mostrará estos resultados en las celdas contiguas hacia abajo (desbordamiento).

Ejemplo 2: Encontrar el valor máximo en cada fila

Usando la misma tabla de datos, podemos encontrar el mes de mayor venta para cada producto.

=BYROW(B2:C4, LAMBDA(fila, MAX(fila)))

Resultado: La función devolverá una matriz con el valor más alto de cada fila: {200; 180; 250}.

Ejemplo 3: Contar valores que superan un umbral

Imaginemos que queremos saber cuántos meses superaron las 175 unidades vendidas para cada producto.

=BYROW(B2:C4, LAMBDA(fila, CONTAR.SI(fila, ">175")))

Resultado: La función devolverá {1; 1; 2}, indicando que el Producto A y B tuvieron un mes por encima de 175, mientras que el Producto C tuvo dos.

Ejemplo 4: Concatenar texto de cada fila

Si tenemos nombres y apellidos en columnas separadas, podemos unirlos para cada persona.

A B
1 Nombre Apellido
2 Ana García
3 Luis Pérez
=BYROW(A2:B3, LAMBDA(fila, UNIRCADENAS(" ", VERDADERO, fila)))

Resultado: Se obtendrá una matriz con los nombres completos: {«Ana García»; «Luis Pérez»}.

Observaciones

La función BYROW es una de las «funciones de ayuda LAMBDA«. Estas funciones no requieren que se escriba explícitamente el nombre del parámetro dentro de la función LAMBDA (en este caso, fila), pero es una buena práctica hacerlo para mejorar la legibilidad de la fórmula.

Como función de matriz dinámica, los resultados de BYROW se «desbordarán» automáticamente a las celdas adyacentes si hay espacio disponible. Si no hay suficiente espacio, se producirá un error #¡DESBORDAMIENTO!.

Errores comunes

  • #¡VALOR!: Ocurre si la función LAMBDA interna no puede ser evaluada correctamente para alguna de las filas o devuelve un error.
  • #¡CALC!: Se produce si se proporciona una matriz vacía o si la función LAMBDA devuelve una matriz vacía. También puede ocurrir si el cálculo de la función LAMBDA no es compatible con el procesamiento de matrices.
  • #¡NOMBRE!: Aparece si el nombre de la función LAMBDA o BYROW está mal escrito o si la versión de Excel no es compatible con estas funciones.

Disponibilidad por versión de Excel

La función BYROW está disponible únicamente para suscriptores de Microsoft 365.

Compatibilidad

Software Compatibilidad Notas
Microsoft Excel ✔️ Disponible solo en Microsoft 365.
Google Sheets ✔️ Funciona de manera idéntica a la versión de Excel.
LibreOffice Calc No disponible. No existen las funciones LAMBDA ni sus funciones de ayuda.
OpenOffice Calc No disponible.
WPS Office Spreadsheets No disponible.
Apple Numbers No disponible.

Funciones Relacionadas

  • BYCOL: Aplica una función LAMBDA a cada columna de una matriz. Es la función «hermana» de BYROW.
  • LAMBDA: Permite crear funciones personalizadas y reutilizables. Es un requisito para usar BYROW.
  • MAP: Aplica una función LAMBDA a cada elemento de una o más matrices.
  • REDUCE: Reduce una matriz a un único valor acumulado aplicando una función LAMBDA a cada elemento.
  • SCAN: Escanea una matriz y aplica una función LAMBDA a cada valor, devolviendo una matriz con los valores intermedios.

Ver también...