Descripción
Utiliza esta función para apilar verticalmente varios rangos o matrices en un único rango.
Sintaxis
VSTACK(array_1, [array_2], ..., [array_29])
Entradas
Esta función acepta el siguiente argumento:
| Nombre | Obligatorio | Descripción | Validar Entrada |
|---|---|---|---|
array_1 |
Sí | El primer rango o matriz para apilar verticalmente (unir). | Una referencia de celda, un rango de celdas o una fórmula que dé como resultado cualquiera de los dos. |
[matriz_2], ..., [matriz_29] |
No | Rangos o matrices adicionales para apilar verticalmente. Se pueden añadir hasta 29 matrices. | Una referencia de celda, un rango de celdas o una fórmula que dé como resultado cualquiera de los dos. |
Ejemplos
Datos de muestra
Conjunto de datos 1
| Un | B | C | D | ||
|---|---|---|---|---|---|
| 1 | Nombre | Ventas | Región | Comisión | |
| 2 | Q1 | ||||
| 3 | John | 45000 | Norte | 4500 | |
| 4 | Alice | 52000 | Sur | 5200 | |
| 5 | Bob | 49500 | Oeste | 4500 | |
| 6 | Q2 | ||||
| 7 | John | 48000 | Norte | 4800 | |
| 8 | Alice | 55000 | Sur | 5500 | |
| 9 | Bob | 51250 | Oeste | 5100 |
Conjunto de datos 2
Hoja 1 (llamada "Employees_Q1")
| Nombre | Edad | Ciudad | Salario | ||
|---|---|---|---|---|---|
| 1 | John | 35 | Nueva York | 75000 | |
| 2 | Alice | 28 | Chicago | 65000 | |
| 3 | Bob | 42 | Los Angeles | 85000 |
Hoja 2 (llamada "Employees_Q2")
| Nombre | Edad | Ciudad | Salario | ||
|---|---|---|---|---|---|
| 1 | George | 22 | Denver | 55000 | |
| 2 | Helen | 30 | Scottsdale | 71000 |
Ejemplos de fórmulas
| Caso práctico | Fórmula | Explicación y resultado | |||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Une dos matrices horizontales en una sola tabla. | =VSTACK(A2:D4, A6:D8) |
Esta fórmula lee los dos rangos de la pestaña y combina los datos de Q1 y Q2 en un único rango. Utilizando el conjunto de datos 1, se obtiene lo siguiente:
|
|||||||||||||||||||||||||||||||||||
| Combina los datos de dos hojas separadas en una tabla. | =VSTACK(Empleados_Q1!A2:D4, Empleados_Q2!A2:D3) |
Esta fórmula extrae los datos de empleados del Q1 de la hoja 1 (Employees_Q1!A2:D4) y los datos de empleados del Q2 de la hoja 2 (Employees_Q2!A2:D3), y usa VSTACK para unir verticalmente ambas matrices extraídas en una sola lista. El orden vertical viene determinado por el orden de las expresiones en la fórmula. Utilizando el conjunto de datos 2, se obtiene lo siguiente:
|
|||||||||||||||||||||||||||||||||||
| Combinar datos de una tabla con un conjunto filtrado de datos de una segunda tabla. Un caso de uso para combinar datos de una tabla con un conjunto filtrado de datos de una segunda tabla es cuando quieres enriquecer los datos de tu tabla primaria con información específica de una tabla relacionada, pero solo para determinadas entradas. |
=VSTACK(A2:D4, FILTER(A6:D8, B6:B8>50000)) |
Combina los datos del Q1 con los datos filtrados del Q2 (donde las ventas son superiores a 50000). Utilizando el conjunto de datos 1, se obtiene lo siguiente:
|
|||||||||||||||||||||||||||||||||||
| Combina datos de dos rangos independientes, extrae los nombres únicos y suma los valores totales de cada persona en ambos periodos. | =HSTACK(UNIQUE(VSTACK(A2:A4, A6:A8)), SUMIF(VSTACK(A2:A4, A6:A8), UNIQUE(VSTACK(A2:A4, A6:A8)), VSTACK(B2:B4, B6:B8))) |
Esta fórmula usa VSTACK para combinar las columnas de nombres del Q1 y del Q2 en una sola lista vertical; luego UNIQUE devuelve cada nombre distinto de esa lista combinada. VSTACK se usa de nuevo para combinar las columnas de ventas del Q1 y del Q2, y SUMIF totaliza los valores de ventas de cada nombre en ambos periodos. HSTACK coloca entonces los nombres únicos y sus totales uno junto al otro. Utilizando el conjunto de datos 1, se obtiene lo siguiente:
Nota: UNIQUE solo elimina las filas duplicadas; no realiza ningún cálculo. Para totalizar los valores de ventas de cada nombre se necesita SUMIF (o una función similar) usada junto con UNIQUE, como se muestra arriba. |
Notas
- Como todas las funciones de matriz, VSTACK rellena dinámicamente los resultados de las celdas adyacentes, empezando por la celda que contiene la función VSTACK.
- VSTACK:
- Combina múltiples rangos de una o más hojas verticalmente en un único rango vertical. El orden de las matrices determina el orden de apilamiento. La primera matriz de la función siempre estará arriba.
- Puedes apilar rangos que tengan anchuras diferentes.
- Es útil para combinar datos de múltiples periodos de tiempo o fuentes.
- Es útil para añadir nuevos registros sin reformatearlos manualmente.
- Mantiene los datos dinámicos (si se añaden nuevas filas, el resultado se actualiza).
Recomendaciones
- Si tienes una fila de encabezados y no quieres que se incluyan los encabezados, comienza tus valores de matriz una fila más abajo (por ejemplo, en el conjunto de datos anterior, comienza con A2 en lugar de A1).
- VSTACK puede combinarse con otras funciones, incluyendo:
Funciones de fórmula de matriz
Aquí tienes otras funciones de fórmulas de matrices compatibles con las hojas de cálculo de Workiva.