A principios de 2023, Google introdujo varias funciones nuevas para Hojas de cálculo, incluidas ocho para trabajar con matrices. Con estas funciones, puede transformar una matriz en una fila o columna, crear una nueva matriz a partir de una fila o columna, o agregar una matriz actual.
Con más flexibilidad para trabajar con matrices e ir más allá de la función básica ARRAYFORMULA, veamos cómo usar estas funciones de matriz con fórmulas en Google Sheets.
Consejo: Algunas de estas funciones pueden resultarle familiares si también utiliza Microsoft Excel.
Transformar una matriz: TOROW y TOCOL
Si tiene una matriz en su conjunto de datos que desea transformar en una sola fila o columna, puede usar las funciones TOROW y TOCOL.
La sintaxis para cada función es la misma, TOROW(array, ignore, scan)y TOCOL(array, ignore, scan)donde solo se requiere el primer argumento. para ambos.
Veamos algunos ejemplos utilizando las funciones TOROW y TOCOL y sus fórmulas.
En este primer ejemplo, tomaremos nuestra matriz A1 a C3 y la convertiremos en una fila usando los argumentos predeterminados con esta fórmula:
=TOROW(A1:C3)
Como puede ver, la matriz ahora está en una fila. Debido a que usamos el argumento predeterminado scan, la función lee de izquierda a derecha (A, D, G), hacia abajo y luego nuevamente de izquierda a derecha (B, E, H) hasta que se completa: escaneada por fila.
Para leer la matriz por columna en lugar de por fila, podemos usar Truepara el argumento scan. Dejaremos el argumento ignoraren blanco. Aquí está la fórmula:
=TOROW(A1:C3,,VERDADERO)
Ahora verá que la función lee la matriz de arriba a abajo (A, B, C), de arriba a abajo (D, E, F) y de arriba a abajo (G, H, I)..
La función TOCOL funciona de la misma manera pero transforma la matriz en una columna. Utilizando el mismo rango, de A1 a C3, aquí está la fórmula que utiliza los argumentos predeterminados:
=TOCOL(A1:C3)
Nuevamente, utilizando el valor predeterminado para el argumento scan, la función lee de izquierda a derecha y proporciona el resultado como tal.
Para leer la matriz por columna en lugar de por fila, inserte Truepara el argumento scande esta manera:
=TOCOL(A1:C3,,TRUE)
Ahora verás que la función lee la matriz de arriba a abajo.
Crear una nueva matriz a partir de filas o columnas: CHOOSEROWS y CHOOSECOLS
Es posible que desee crear una nueva matriz a partir de una existente. Esto le permite crear un nuevo rango de celdas con solo valores específicos de otro. Para esto, utilizará CHOOSEROWS y CHOOSECOLS Funciones de Hojas de cálculo de Google.
La sintaxis de cada función es similar, CHOOSEROWS (array, row_num, row_num_opt)y CHOOSECOLS (array, col_num, col_num_opt),donde los dos primeros argumentos son obligatorios para ambos.
Veamos algunos ejemplos usando CHOOSEROWS y CHOOSECOLS y sus fórmulas.
En este primer ejemplo, usaremos la matriz A1 a B6. Queremos devolver los valores de las filas 1, 2 y 6. Aquí está la fórmula:
=ELEGIR FILAS(A1:B6,1,2,6)
Como puede ver, recibimos esas tres filas para crear nuestra nueva matriz.
Para otro ejemplo, usaremos la misma matriz. Esta vez queremos devolver las filas 1, 2 y 6, pero con la 2 y 6 en orden inverso. Puedes usar números positivos o negativos para recibir el mismo resultado.
Usando números negativos, usarías esta fórmula:
=SELECCIONARFILAS(A1:B6,1,-1,-5).
Para explicarlo, 1 es la primera fila que se devuelve, -1 es la segunda fila que se devuelve, que es la primera fila que comienza desde abajo, y -5 es la quinta fila desde abajo.
Usando números positivos, usarías esta fórmula para obtener el mismo resultado:
=SELECCIONARFILAS(A1:B6,1,6,2)
La función CHOOSECOLS funciona de manera similar, excepto que la usas cuando quieres crear una nueva matriz a partir de columnas en lugar de filas.
Usando la matriz A1 a D6, podemos devolver las columnas 1 (columna A) y 4 (columna D) con esta fórmula:
=ELIGERECOLS(A1:D6,1,4)
Ahora tenemos nuestra nueva matriz con solo esas dos columnas.
Como otro ejemplo, usaremos la misma matriz comenzando con la columna 4. Luego agregaremos las columnas 1 y 2 con 2 (columna B) primero. Puedes utilizar números positivos o negativos:
=ELIGERECOLS(A1:D6,4,2,1)
=ELIGERECOLS(A1:D6,4,-3,-4)
Como puede ver en la captura de pantalla anterior, con las fórmulas en las celdas en lugar de en la barra de fórmulas, recibimos el mismo resultado usando ambas opciones.
Nota: debido a que Google sugiere usar números negativos invierte la ubicación de los resultados, tenga esto en cuenta si no recibe los resultados correctos utilizando números positivos.
Ajuste para crear una nueva matriz: WRAPROWS y WRAPCOLS
Si desea crear una nueva matriz a partir de una existente pero ajustar las columnas o filas con una cierta cantidad de valores en cada una, puede usar las funciones WRAPROWS y WRAPCOLS.
La sintaxis para cada función es la misma, WRAPROWS (rango, conteo, pad)y WRAPCOLS (rango, conteo, pad),donde los dos primeros argumentos son requerido para ambos.
Veamos algunos ejemplos utilizando las funciones WRAPROWS y WRAPCOLS y sus fórmulas..
En este primer ejemplo, usaremos el rango de celdas A1 a E1. Crearemos una nueva matriz que envuelva filas con tres valores en cada fila. Aquí está la fórmula:
=WRAPROWS(A1:E1,3)
Como puedes ver, tenemos una nueva matriz con el resultado correcto, tres valores en cada fila. Debido a que tenemos una celda vacía en la matriz, se muestra el error #N/A. En el siguiente ejemplo, usaremos el argumento padpara reemplazar el error con el texto "Ninguno". Aquí está la fórmula:
=WRAPROWS(A1:E1,3,”Ninguno”)
Ahora podemos ver una palabra en lugar de un error de Google Sheets.
La función WRAPCOLS hace lo mismo creando una nueva matriz a partir de un rango de celdas existente, pero lo hace ajustando columnas en lugar de filas.
Aquí usaremos la misma matriz, A1 a E3, envolviendo columnas con tres valores en cada columna:
=WRAPCOLS(A1:E1,3)
Al igual que en el ejemplo de WRAPROWS, recibimos el resultado correcto pero también un error debido a la celda vacía. Con esta fórmula, puedes usar el argumento padpara agregar la palabra "Vacío":
=WRAPCOLS(A1:E1,3,”Vacío”)
Esta nueva matriz se ve mucho mejor con una palabra en lugar del error.
Combinar para crear una nueva matriz: HSTACK y VSTACK
Las dos funciones finales que veremos son para agregar matrices. Con HSTACK y VSTACK, puede agregar dos o más rangos de celdas para formar una única matriz, ya sea horizontal o verticalmente.
La sintaxis para cada función es la misma, HSTACK (rango1, rango2,…)y VSTACK (rango1, rango2,…),donde solo se incluye el primer argumento. requerido. Sin embargo, casi siempre utilizarás el segundo argumento, que combina otro rango con el primero.
Veamos algunos ejemplos usando HSTACK y VSTACK y sus fórmulas.
En este primer ejemplo, combinaremos los rangos A1 a D2 con A3 a D4 usando esta fórmula:.
=HSTACK(A1:D2,A3:D4)
Puedes ver nuestros rangos de datos combinados para formar una única matriz horizontal.
Para un ejemplo de la función VSTACK, combinamos tres rangos. Usando la siguiente fórmula, usaremos los rangos A2 a C4, A6 a C8 y A10 a C12:
=VSTACK(A2:C4,A6:C8,A10:C12)
Ahora tenemos una matriz con todos nuestros datos usando una fórmula en una sola celda.
Manipule matrices con facilidad
Si bien puedes usar FÓRMULA DE MATRIZ en determinadas situaciones, como con la función SUMA o la función SI, estas fórmulas matrices adicionales de Google Sheets pueden ahorrarte tiempo. Le ayudan a organizar su hoja exactamente como la desea y con una única fórmula matricial.
Para obtener más tutoriales como este, pero con funciones que no son de matriz, mira cómo usa el CONTAR.SI o Función SUMAR.SI en Google Sheets.
.