in

Cómo utilizar la función VSTACK() de Microsoft Excel para combinar varios conjuntos de datos

Disparo en la cabeza serio empresario afroamericano desconcertado mirando portátil

Disparo en la cabeza serio empresario afroamericano desconcertado mirando portátil
Imagen: fizkes/Adobe Stock

¿Alguna vez ha recibido datos que tuvo que consolidar manualmente? Es un trabajo tedioso y propenso a errores. Si los conjuntos de datos comparten la misma estructura, puede usar referencias 3D, pero la configuración es tediosa y propensa a errores. Gracias a Microsoft Excel nueva función VSTACK(), todo lo que necesita es una función para combinar varias columnas de datos o incluso conjuntos de datos completos en una larga lista de datos.

En este tutorial, le mostraré cómo usar VSTACK() y revisaré algunos de sus comportamientos flexibles. Luego, veremos un uso simple pero común en la vida real.

VER: Google Workspace frente a Microsoft 365: un análisis en paralelo con lista de verificación (TechRepublic Premium)

Estoy usando microsoft 365 en un sistema Windows 10 de 64 bits. Excel para la web es compatible con VSTACK(), pero por ahora, VSTACK() solo está disponible a través del canal Office Insider Beta de Microsoft. Este programa brinda acceso anticipado a las funciones de suscripción de Office a través de dos canales:

  • Canal Beta
  • Canal actual (vista previa)

Ambos canales están disponibles para dispositivos Windows y Mac. Para obtener más información, comuníquese con su administrador o lea Compara los canales de Office Insider.

Acerca de VSTACK() en Excel

La nueva función VSTACK() de Excel agrega matrices en secuencia para devolver una matriz más grande. En este contexto, matriz simplemente significa varios elementos. En otras palabras, esta función combina varios valores en una sola lista dinámica de valores desparramándose en las celdas debajo y a la derecha de la función.

La sintaxis de VSTACK() es simple y solo requiere referencias a los valores de la siguiente manera:

VSTACK(array1, [array2], …)

El único argumento requerido, matriz1, hace referencia a una columna de valores y puede hacer referencia a varias matrices. Los datos originales pueden ser un rango de datos normal o un objeto de tabla. Una de las cosas buenas de esta función es que las matrices a las que se hace referencia no necesitan tener el mismo tamaño.

VSTACK() devolverá los valores a los que se hace referencia en el orden de los argumentos. Es posible que vea el error #N/A cuando una matriz tiene menos columnas que el ancho máximo de las matrices seleccionadas. Cuando esto sucede, puede envolver VSTACK() en una función IFERROR(), para que no vea esos errores.

Ahora, veamos un ejemplo simple de VSTACK().

Cómo usar VSTACK() en Excel

Cuando los valores o las matrices no son contiguos, puede usar VSTACK() para combinarlos en una sola lista. Para demostrar, la función en F3

=VSTACK(D3:D7,D11:D13)

devuelve una sola lista de valores de cantidad de D3:D7 y D11:D13, como se muestra en Figura A. La función devuelve una matriz que se derrama en las celdas de abajo, consumiendo tantas celdas como sea necesario para cumplir con los argumentos.

Figura A

VSTACK() devuelve una lista como una matriz dinámica.

Como puede ver, la función agrega los valores en D11:D13 a la lista en D3:D7. Eso es porque D3:D7 es el primer argumento. La función en G3

=VSTACK(D11:D13,D3:D7)

invierte los argumentos, invirtiendo su orden en la lista resultante en la columna G.

Hasta ahora, las referencias han estado en la misma columna, pero eso no es necesario. Como puedes ver en Figura B, VSTACK() combina los valores en dos columnas diferentes: D3:D7 y G3:G10. No solo los valores provienen de diferentes columnas, sino que G3:G10 tiene más valores que D3:D7. Esto no es un problema para VSTACK().

Figura B

VSTACK() puede agregar valores de diferentes columnas.

Veamos otro ejemplo simple que muestra cómo VSTACK() maneja una matriz como argumento. Figura C muestra los resultados de la función en J2:

=VSTACK({"Region","Amount"},C3:D7,C11:D13)

La función agrega una lista de dos columnas y la matriz {«Región», «Cantidad»} ingresa encabezados para ambas columnas.

Figura C

Esta función tiene una matriz como primer argumento.

Ahora que tiene una idea de cómo funciona esta función, usémosla con un ejemplo realista.

Cómo consolidar tablas mensuales usando VSTACK() en Excel

Una necesidad común es combinar datos en diferentes hojas. Por ejemplo, supongamos que tiene 13 hojas, una para cada mes del año y otra que enumera todos esos rangos de datos en una lista larga. Puede copiar los datos al final de cada mes en esa lista final o puede usar VSTACK().

Figura D muestra una tabla simple y el nombre de la hoja es enero. Puede ver en las pestañas que hay 12 hojas más. ¿Qué pensarías si te dijera que puedes combinar todas estas hojas con una sola función? Puedes.

Figura D

Usaremos VSTACK() para combinar los 12 rangos de datos.

Como puedes ver en Figura E, una función VSTACK() simple agrega los 12 rangos de datos. También puede notar que los resultados incluyen muchos registros llenos de ceros. Mira la función de cerca:

=VSTACK(January:December!B3:D12)

Si compara la referencia B3:D12 con los rangos de datos reales, verá que cada uno tiene muchas filas en blanco, pero si cada rango tiene una cantidad diferente de registros, es la única forma de asegurarse de obtener todos los datos y incluso entonces, es posible que tenga una tabla que tenga más de lo que permite la referencia y pierda datos por completo. Esta no es una gran solución.

Figura E

VSTACK() devuelve 0 cuando no hay ningún valor para devolver en una celda a la que se hace referencia.

Hay un remedio fácil: use tablas de Excel. Al convertir los rangos de datos a tablas, no necesita especificar un rango de datos. En su lugar, hará referencia a las 12 tablas.

Para lograr esto, convierta todos los rangos de datos a tablas. Simplemente haga clic dentro del rango de datos, presione Ctrl + T y luego haga clic en Aceptar. Es un poco molesto, pero no llevará mucho tiempo. Luego, vaya a la hoja consolidada, 2021, y reemplace la primera función VSTACK() con la siguiente función:

=VSTACK(Table1,Table2,Table3,Table4,Table5,Table6,Table7,Table8,Table9,Table10,Table11,Table12)

Si escribe con lentitud, use la lista de Autocompletar para ingresar los nombres de las tablas. Figura F muestra los resultados. Esta vez, la función devuelve una lista consolidada de las 12 tablas, sin las filas vacías. Cuando actualice las tablas, la función VSTACK() en la hoja 2021 se actualizará automáticamente. El resultado no copia el formato de la celda, por lo que tendrá que encargarse de eso manualmente.

Figura F

Convierta los rangos de datos en tablas para eliminar las filas vacías.

Manténganse al tanto

Otra función nueva es HSTACK(), que también está disponible a través del canal Office Insider Beta de Microsoft. Como puede sospechar, esta función es similar a VSTACK(), pero la salida es horizontal. Cubriré esta función en un artículo futuro.

Fuente

Ofertas: MacBook Air M2 de Apple a la venta por el precio más bajo de todos los tiempos de $ 1,099 ($ ​​100 de descuento)

Actualización de Deltarune Capítulo 4 diner

Toby Fox publica una actualización de desarrollo en los capítulos 3 a 5 de Deltarune