BlogExcel

Función TOROW de Excel para convertir rango o matriz en fila

Una forma rápida de convertir un rango de celdas en una sola fila con SUCESIVAMENTE función.

Microsoft Excel 365 ha introducido varias funciones nuevas para realizar diversas manipulaciones de matriz. Con TOROW, puede realizar transformaciones de rango a fila en muy poco tiempo. Aquí hay una lista de tareas que esta nueva función puede realizar:

Función de Excel TOROOW

La función TOROW en Excel se usa para convertir una matriz o rango de celdas en una sola fila.

La función toma un total de tres argumentos, de los cuales solo se requiere el primero.

TOROW(matriz, [ignore], [scan_by_column])

Dónde:

Matriz (obligatorio): una matriz o rango para convertir en una sola fila.

Ignorar (opcional): determina si se ignoran los espacios en blanco y/o los errores. Puede tomar uno de estos valores:

  • 0 u omitido (predeterminado) – mantener todos los valores
  • 1 – ignorar espacios en blanco
  • 2 – ignorar errores
  • 3 – ignorar espacios en blanco y errores

Escanear_por_columna (opcional) – define cómo escanear la matriz:

  • FALSO u omitido (predeterminado): escanea la matriz horizontalmente por fila.
  • VERDADERO: escanea la matriz verticalmente por columna.
Función de Excel TOROOW

Consejos:

  • Para convertir una matriz en una sola columna, use la función TOCOL.
  • Para realizar la transformación inversa de fila a matriz, use la función WRAPCOLS para envolver columnas o la función WRAPROWS para envolver matrices en filas.
  • Para convertir filas en columnas, use la función TRANSPONER.

Disponibilidad TORO

TOROW es una característica nueva que solo se admite en Excel para Microsoft 365 (para Windows y Mac) y Excel para la web.

Fórmula básica de TOROW en Excel

Para hacer una transformación simple de rango a fila, use la fórmula TOROW en su forma básica. Para esto, necesita definir solo el primer argumento (matriz).

Por ejemplo, para convertir una matriz bidimensional que consta de 3 columnas y 3 filas en una sola fila, la fórmula es:

=TOROW(A3:C6)

Ingrese la fórmula en una sola celda (A10 en nuestro caso) y automáticamente se desborda a tantas celdas como sea necesario para contener todos los resultados. En términos de Excel, el rango de salida rodeado por un borde azul delgado se denomina rango de drenaje. Usando una fórmula TOROW básica en Excel

Cómo funciona esta fórmula:

Primero, una matriz dada de celdas se transforma en una matriz bidimensional. Tenga en cuenta las columnas delimitadas por comas y las filas separadas por punto y coma:

{"Apple","Banana","Cherry";1,2,3;4,5,6;7,8,9}

Luego, la función TOROW lee la matriz de izquierda a derecha y la convierte en una matriz horizontal unidimensional:

{"Apple","Banana","Cherry",1,2,3,4,5,6,7,8,9}

El resultado va a la celda A10, desde donde fluye hacia la celda vecina de la derecha.

Convierte rango a línea ignorando espacios y errores

De forma predeterminada, la función TOROW conserva todos los valores en la matriz de origen, incluidas las celdas vacías y los errores. En la salida, aparecen valores cero en lugar de celdas vacías, lo que puede ser bastante confuso.

a excluir espaciosHACER ignorar argumento a 1:

=TOROW(A3:C5, 1)

a ignorar erroresHACER ignorar argumento a 2:

=TOROW(A3:C5, 2)

Para omitir ambos, espacios en blanco y erroresusa 3 para ignorar argumento:

=TOROW(A3:C5, 3)

La siguiente imagen muestra los tres escenarios en acción: La fórmula TOROW ignora los espacios en blanco y los errores.

Leer la matriz horizontal o verticalmente

Con el comportamiento predeterminado, la función TOROW procesa la matriz horizontalmente de izquierda a derecha. Para escanear valores por columna de arriba a abajo, configure 3calle argumento (escanear_por_columna) a VERDADERO o 1.

Por ejemplo, para leer el rango fuente por fila, la fórmula en E3 es:

=TOROW(A3:C5)

Para escanear el rango por columna, la fórmula en E8 es:

=TOROW(A3:C5, ,TRUE)

En ambos casos, las matrices resultantes tienen el mismo tamaño, pero los valores se organizan en un orden diferente. Fórmula TOROW para leer la matriz horizontalmente por fila o verticalmente por columna.

Combinar múltiples rangos en una fila

Para combinar varios rangos no adyacentes en una sola fila, primero apílelos horizontal o verticalmente en una sola matriz usando HSTACK o VSTACK, respectivamente, y luego use la función TOROW para convertir la matriz combinada en una fila.

Dependiendo de su lógica comercial, una de las siguientes fórmulas hará el trabajo.

Apila matrices horizontalmente y convierte fila por fila

Con el primer rango en A3:C4 y el segundo rango en A8:C9, la siguiente fórmula apilará los dos rangos horizontalmente en una sola matriz y luego la transformará en una fila que lee los valores de izquierda a derecha. El resultado está en E3 en la imagen de abajo.

=TOROW(HSTACK(A3:C4, A8:C9))

Apilar matrices horizontalmente y convertir por columna

Para leer la matriz apilada verticalmente de arriba a abajo, configure 3calle el argumento TOROW a VERDADERO, como se muestra en E5 en la imagen a continuación:

=TOROW(HSTACK(A3:C4, A8:C9), ,TRUE)

Apilar matrices verticalmente y convertir por fila

Para sumar cada matriz subsiguiente al final de la matriz anterior y leer la matriz combinada horizontalmente, la fórmula en E12 es:

=TOROW(VSTACK(A3:C4, A8:C9))

Apilar matrices verticalmente y convertir por columna

Para agregar cada matriz posterior al final de la anterior y escanear la matriz combinada verticalmente, la fórmula es:

=TOROW(VSTACK(A3:C4, A8:C9), ,TRUE)

Para comprender mejor la lógica, observe el diferente orden de los valores en las tablas resultantes: Fórmulas TOROW para fusionar múltiples rangos en una sola fila.

Extrae valores únicos de un rango en una fila

Comenzando con Microsoft Excel 2016, tenemos una función increíble llamada ÚNICA que puede obtener fácilmente valores únicos de una sola columna o fila. Sin embargo, no puede manejar matrices de varias columnas. Para superar esta limitación, use las funciones ÚNICO y TOROW juntas.

Por ejemplo, para extraer todos los valores distintos (diferentes) del rango A2:C7 y colocar los resultados en una fila, la fórmula es:

=UNIQUE(TOROW(A2:C7), TRUE)

Dado que TOROW devuelve una matriz horizontal unidimensional, establecemos el segundo (de_col) argumento de ÚNICO a VERDADERO para comparar columnas entre sí.

Si desea que los resultados se ordenen alfabéticamente, incluya la fórmula anterior en la función ORDENAR:

=SORT(UNIQUE(TOROW(A2:C7), TRUE), , ,TRUE )

Al igual que con ÚNICO, el de_col el argumento ORDENAR también se establece en VERDADERO. Extraiga valores únicos de un rango de varias columnas en una sola fila.

Alternativa TOROW para Excel 365 – 2010

En las versiones de Excel donde la función TOROW no está disponible, puede convertir un rango en una sola fila usando una combinación de varias funciones diferentes que funcionan en versiones anteriores. Estas soluciones son más complejas, pero funcionan.

Para escanear el rango horizontalmente, la fórmula genérica es:

ÍNDICE(rangoCOCIENTE(COLUMNA (A1)-1, COLUMNAS(rango))+1, MODO(COLUMNA(A1)-1, COLUMNAS(rango))+1)

Para escanear el rango verticalmente, la fórmula genérica es:

ÍNDICE(rangoMODO(COLUMNA(A1)-1, COLUMNAS(rango))+1, QOTENTE(COLUMNA (A1)-1, COLUMNAS(rango))+1)

Para nuestro conjunto de datos de ejemplo en A3:C5, las fórmulas toman la siguiente forma:

Para escanear rango por fila:

=INDEX($A$3:$C$5, QUOTIENT(COLUMN(A1)-1, COLUMNS($A$3:$C$5))+1, MOD(COLUMN(A1)-1, COLUMNS($A$3:$C$5))+1)

Esta fórmula es una alternativa a la función TOROW con 3calle argumento establecido en FALSO u omitido:

=TOROW(A3:C5)

Para escanear el rango por columna:

=INDEX($A$3:$C$5, MOD(COLUMN(A1)-1, COLUMNS($A$3:$C$5))+1, QUOTIENT(COLUMN(A1)-1, COLUMNS($A$3:$C$5))+1)

Esta fórmula es equivalente a la función TOROW por 3calle argumento establecido en VERDADERO:

=TOROW(A3:C5, ,TRUE)

Tenga en cuenta que, a diferencia de la función de matriz dinámica TOROW, estas fórmulas tradicionales deben ingresarse en cada celda donde desea que aparezcan los resultados. En nuestro caso, la primera fórmula (en una fila) va a E3 y se copia a través de M3. La segunda fórmula (en la columna) aterriza en E8 y se dibuja a través de M8.

Para que las fórmulas se copien correctamente, bloqueamos el rango usando referencias absolutas ($A$3:$C$5). Un rango con nombre también será útil.

Si ha copiado fórmulas en más celdas de las necesarias, ¡un #REF! el error aparecerá en las celdas «extra». Para solucionar esto, ajuste la fórmula en la función IFEROARE de esta manera:

=IFERROR(INDEX($A$3:$C$5, QUOTIENT(COLUMN(A1)-1, COLUMNS($A$3:$C$5))+1, MOD(COLUMN(A1)-1, COLUMNS($A$3:$C$5))+1), "") Convierta un rango bidimensional en una sola fila en Excel.

Cómo funcionan estas fórmulas

A continuación se muestra un desglose detallado de la primera fórmula que organiza los valores por fila:

=INDEX($A$3:$C$5, QUOTIENT(COLUMN(A1)-1, COLUMNS($A$3:$C$5))+1, MOD(COLUMN(A1)-1, COLUMNS($A$3:$C$5))+1)

En el corazón de la fórmula, usamos la función ÍNDICE para obtener el valor de una celda en función de su posición relativa en el rango.

El numero de fila se calcula con esta fórmula:

QUOTIENT(COLUMN(A1)-1, COLUMNS($A$3:$C$5))+1

La idea es producir una secuencia repetitiva de números como 1,1,1,2,2,2,3,3,3, … donde cada número se repite tantas veces como columnas haya en el rango de origen. Y así es como lo hacemos:

COCIENTE devuelve la parte entera de una división.

Para numeradorusamos COLUMNA (A1) -1, que devuelve un número de serie desde 0 en la primera celda donde se ingresa la fórmula en norte (el número total de valores en el rango menos 1) en la última celda donde se ingresó la fórmula. En este ejemplo, tenemos 0 en E2 y 8 en M3.

Para denominador, usamos COLUMNAS ($ A $ 3: $ C $ 5)). Esto devuelve un número constante igual al número de columnas en su rango (3 en nuestro caso).

Como resultado, la función COCIENTE devuelve 0 en las primeras 3 celdas (E3:G3), a las que sumamos 1, por lo que el número de fila es 1.

Para las siguientes 3 celdas (H3:J3), COCIENTE devuelve 1 y +1 devuelve el número de fila 2. Y así sucesivamente.

Calcular número de columnaconstruya una secuencia apropiada de números usando la función MOD:

MOD(COLUMN(A1)-1, COLUMNS($A$3:$C$5))+1

Como hay 3 columnas en nuestro rango, la secuencia debe verse así: 1,2,3,1,2,3,…

La función MOD devuelve el resto después de la división.

En E3, MOD(COLUMNA(A1)-1, COLUMNAS($A$3:$C$5))+1

SE CONVIERTE

MOD(1-1, 3)+1)

y devuelve 1.

En F3, MOD(COLUMNA(B1)-1, COLUMNAS($A$3:$C$5))+1

SE CONVIERTE

MOD(2-1, 3)+1)

y devuelve 2.

Una vez que se establecen los números de fila y columna, ÍNDICE toma fácilmente el valor en la intersección de esa fila y columna.

En E3, ÍNDICE ($ A $ 3: $ C $ 5, 1, 1) devuelve un valor de 1Calle fila y 1Calle columna en el rango de referencia, es decir, desde la celda A3.

En F3, ÍNDICE ($ A $ 3: $ C $ 5, 1, 2) devuelve un valor de 1Calle fila y 2cuando columna, es decir, de la celda B3.

Etcétera.

La segunda fórmula que escanea el rango por columna funciona de manera similar. La diferencia es que usamos MOD para calcular el número de fila y COCIENTE para averiguar el número de columna.

La función TOROW no funciona

Si la función TOROW genera un error, lo más probable es que se deba a uno de estos motivos:

#¿NOMBRE? error

Con la mayoría de las funciones de Excel, ¿un #NOMBRE? error es una indicación clara de que el nombre de la función está mal escrito. Con TOROW, también puede significar que la función no está disponible en Excel. Si su versión de Excel es diferente a 365, intente usar un La alternativa TOROW.

#NÚM error

¡UN #NUM! El error indica que la matriz devuelta no cabe en una fila. La mayoría de las veces, esto sucede cuando se hace referencia a columnas y/o filas enteras en lugar de a un rango más pequeño.

#DERRAME error

En la mayoría de los casos, un error #SPILL sugiere que la fila donde ingresó la fórmula no tiene suficientes celdas vacías para transmitir los resultados. Si las celdas vecinas están visualmente vacías, asegúrese de que no haya espacios u otros caracteres que no se impriman en ellas. Para obtener más información, consulte Qué significa el error #SPILL en Excel.

Así es como usa la función TOROW de Excel para convertir una matriz o rango bidimensional en una sola fila. ¡Gracias por leer y espero verte en nuestro blog la próxima semana!

Libro de ejercicios para descargar.

Función TOROW de Excel – ejemplos de fórmulas (archivo .xlsx)

También te puede interesar

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba
Cerrar