Skip to main content

¿Cómo apilar rápidamente múltiples columnas en una sola columna en Excel?

Author: Sun Last Modified: 2025-08-06

En Excel, la Texto en Columnas función está diseñada para dividir datos en una sola columna en múltiples columnas utilizando un delimitador específico. Sin embargo, ¿qué pasa si necesitas hacer lo contrario: combinar o apilar los valores de múltiples columnas en una sola columna, como se muestra en el ejemplo a continuación? Este escenario surge con frecuencia al consolidar conjuntos de datos, preparar información para análisis o formatear informes para su posterior procesamiento. Desafortunadamente, no hay una función incorporada en Excel que apile directamente las columnas verticalmente, pero hay varias soluciones prácticas que puedes usar para realizar esta tarea eficientemente.
stack columns to one

Apilar múltiples columnas en una con fórmulas

Apilar múltiples columnas en una con VBA

Apilar múltiples columnas en una con Transformar Rango good idea3

Apilar múltiples columnas en una con Power Query


Apilar múltiples columnas en una con fórmula

Si prefieres no usar macros o complementos, puedes apilar múltiples columnas en una sola columna con una fórmula matricial usando la función ÍNDICE. Este enfoque es adecuado para conjuntos de datos dinámicos o situaciones en las que deseas evitar operaciones manuales. Una ventaja es que la fórmula actualizará automáticamente los resultados si cambian tus datos de origen, pero debes ser preciso con los nombres de rango y evitar insertar o eliminar celdas dentro del rango referenciado.

1. Selecciona el rango de datos que deseas apilar (por ejemplo, A1:C4), luego haz clic en el Cuadro de Nombres (ubicado a la izquierda de la barra de fórmulas), escribe un nombre significativo como MisDatos, y presiona Enter. Esto nombra tu rango para facilitar su referencia.
define a range name for the data range

2. Haz clic en una celda en blanco donde quieras que comience la columna apilada, generalmente debajo de tus datos o en otra hoja. Pega esta fórmula en la celda seleccionada:

=INDEX(MyData,1+INT((ROW(A1)-1)/COLUMNS(MyData)),MOD(ROW(A1)-1+COLUMNS(MyData),COLUMNS(MyData))+1)

3. Presiona Enter para confirmar, luego arrastra el controlador de relleno hacia abajo hasta que veas un #¡REF! o un error similar, indicando que todos los datos han sido listados. Elimina la celda de error si es necesario.
enter a formula to get the result

En esta fórmula, MisDatos se refiere al rango que definiste en el paso 1. COLUMNAS(MisDatos) se ajusta automáticamente al número de columnas en tus datos. Asegúrate de no insertar ni eliminar columnas dentro de MisDatos después de ingresar la fórmula, ya que esto puede afectar los resultados. Si tus datos contienen celdas en blanco, esos espacios también se apilarán; puedes filtrarlos después si es necesario. Para rangos grandes, arrastrar el controlador de relleno puede llevar tiempo; considera hacer doble clic en el controlador de relleno si la columna de la izquierda tiene datos hasta abajo.

Si tu versión de Excel admite matrices dinámicas (Excel365 o Excel2021 y posteriores), puedes intentar:

=TOCOL(MyData,1)

Esta fórmula solo está disponible en versiones más recientes de Excel y apila instantáneamente las columnas en una sola columna.


Apilar múltiples columnas en una con VBA

Si necesitas apilar columnas con frecuencia o quieres mayor control, una macro VBA puede automatizar este proceso en solo unos clics. VBA es ideal para usuarios avanzados que manejan grandes conjuntos de datos o tareas repetitivas. Ten en cuenta, sin embargo, que habilitar macros puede representar un riesgo de seguridad si no estás seguro de la fuente de la macro. Siempre guarda tu archivo antes y ten cuidado al ejecutar código desconocido.

1. Presiona Alt + F11 para abrir la ventana de Microsoft Visual Basic para Aplicaciones.

2. En la ventana de VBA, haz clic en Insertar > Módulo. Copia y pega el siguiente código en el nuevo módulo:

VBA: Apilar columnas en una

Sub ConvertRangeToColumn()
'UpdatebyExtendoffice
Dim Range1 As Range, Range2 As Range, Rng As Range
Dim rowIndex As Integer
xTitleId = "KutoolsforExcel"
Set Range1 = Application.Selection
Set Range1 = Application.InputBox("Source Ranges:", xTitleId, Range1.Address, Type:=8)
Set Range2 = Application.InputBox("Convert to (single cell):", xTitleId, Type:=8)
rowIndex = 0
Application.ScreenUpdating = False
For Each Rng In Range1.Rows
    Rng.Copy
    Range2.Offset(rowIndex, 0).PasteSpecial Paste:=xlPasteAll, Transpose:=True
    rowIndex = rowIndex + Rng.Columns.Count
Next
Application.CutCopyMode = False
Application.ScreenUpdating = True
End Sub

insert the vba code into the module

3. Para ejecutar la macro, presiona F5, o haz clic en el botón Ejecutar. Después de ejecutarla, aparecerá un mensaje; selecciona el rango de datos que deseas apilar y haz clic en Aceptar.

4. Luego se te pedirá que selecciones una celda de destino para el resultado. Haz clic en Aceptar de nuevo. Las columnas se apilarán en una sola columna comenzando desde la celda de destino.
vba code to select the data range
vba code to select a cell to output the result

Si encuentras un error, verifica nuevamente el rango seleccionado y asegúrate de que no haya hojas protegidas o celdas combinadas. Para una personalización más avanzada, como omitir espacios en blanco o apilar solo ciertas columnas, el código se puede modificar aún más. Recuerda guardar tu trabajo antes de ejecutar el código VBA para evitar la pérdida de datos no deseada.


Apilar múltiples columnas en una con Transformar Rango

Si prefieres una solución rápida y fácil de usar sin tener que escribir fórmulas o código, puedes usar la característica Transformar Rango de Kutools para Excel. Esta utilidad es especialmente útil para usuarios que desean procesar datos rápidamente mediante una interfaz intuitiva, como administradores de oficina o aquellos que procesan regularmente datos multidimensionales. Usar Kutools minimiza el riesgo de errores en las fórmulas y ahorra mucho tiempo, aunque requiere instalar el complemento.

Kutools para Excel ofrece más de 300 funciones avanzadas para simplificar tareas complejas, potenciando la creatividad y la eficiencia. Integrado con capacidades de inteligencia artificial, Kutools automatiza las tareas con precisión, haciendo que la gestión de datos sea sencilla. Información detallada de Kutools para Excel...  Prueba gratuita...

Después de instalar gratuitamente Kutools para Excel, procede de la siguiente manera:

1. Selecciona las columnas o rango de datos que deseas apilar en una sola columna. Luego haz clic en Kutools > Rango > Transformar Rango para abrir el cuadro de diálogo.
click Transform Range feature of kutools

2. En el Transformar Rango cuadro de diálogo, elige la opción Rango a columna única y haz clic en Aceptar. Luego, selecciona una celda donde deseas que aparezca el resultado.
check Range to single column option and select a cell to put the result

3. Finalmente, haz clic en Aceptar. Las columnas seleccionadas se apilarán inmediatamente en una sola columna en la ubicación elegida.
 the columns have been stacked into one single column by kutools

Este método es sencillo y libre de errores. Recuerda que puedes deshacer fácilmente el cambio (Ctrl + Z) si algo no se ve bien, o volver a ejecutar Transformar Rango según sea necesario para diferentes conjuntos de datos. Si tus datos contienen celdas combinadas, es mejor descombinarlas antes de usar esta característica para evitar resultados inesperados.


Apilar múltiples columnas en una con Power Query

Power Query (también llamado Obtener y Transformar en algunas versiones de Excel) es otra forma práctica de apilar múltiples columnas en una, especialmente para usuarios que trabajan con grandes volúmenes de datos o que necesitan automatizar tareas de transformación recurrentes. Power Query está integrado en Excel 2016 y versiones posteriores, y está disponible como un complemento gratuito para Excel 2010 y 2013. Es más útil para la preparación avanzada de datos y puede manejar fácilmente operaciones complejas de remodelación con una interfaz de usuario simple. Sin embargo, tiene una pequeña curva de aprendizaje para los usuarios por primera vez.

Carga tu tabla de origen en Power Query. Selecciona tus datos en Excel. Ve a Datos > Desde Tabla/Rango para abrir el Editor de Power Query.

2. Selecciona todas las columnas en la vista previa de la consulta. Ve a la pestaña Transformar, encuentra el grupo Tabla y haz clic en Transponer. Esto invierte las filas y las columnas.

3. De nuevo, selecciona todas las columnas transpuestas. En la pestaña Transformar, bajo el grupo Cualquier Columna, haz clic en Despivotar Columnas.

4. Elimina la columna "Atributo" si no es necesaria. Haz clic derecho en el encabezado de la columna "Atributo" > Selecciona Eliminar.

5. Haz clic en Cerrar y Cargar para enviar el resultado a Excel como una nueva hoja de cálculo o tabla. En cualquier momento, puedes actualizar o reaplicar la transformación si cambian tus datos de origen.

Power Query te permite guardar este proceso de apilado como una consulta reutilizable y actualizar rápidamente los resultados si tus datos cambian en el futuro.

Nota: Este enfoque podría no conservar la información del encabezado de columna original de los datos de origen.

En resumen, cada uno de estos métodos tiene sus fortalezas: las fórmulas son adecuadas para actualizar datos dinámicamente, VBA es excelente para automatizar tareas repetitivas, Kutools para Excel permite operaciones de clic con poco conocimiento técnico requerido, y Power Query es ideal para transformaciones avanzadas o recurrentes. Siempre revisa tus datos apilados para detectar espacios en blanco restantes, celdas combinadas o errores de formato después del procesamiento. Si aparecen errores o resultados inesperados, verifica nuevamente tus rangos definidos o selección de pasos. Usar una combinación de estos métodos te ayudará a gestionar y transformar eficientemente tus datos de Excel para necesidades de informes y análisis.


Las mejores herramientas de productividad para Office

🤖 Asistente de IA de Kutools: Revoluciona el análisis de datos basado en: Ejecución inteligente |Generar código |Crear fórmulas personalizadas |Analizar datos y generar gráficos |Invocar funciones mejoradas
Funciones populares: Buscar, resaltar o marcar duplicados | Eliminar filas en blanco | Combinar columnas o celdas sin perder datos | Redondear...
Super BUSCARV: Búsqueda con múltiples criterios | Búsqueda de múltiples valores | Búsqueda en varias hojas | Coincidencia difusa....
Lista desplegable avanzada: Crea rápidamente listas desplegables | Lista desplegable dependiente | Lista desplegable con selección múltiple....
Administrador de columnas: Agregar un número específico de columnas | Mover columnas | Cambiar la visibilidad de columnas ocultas | Comparar rangos y columnas...
Funciones destacadas: Cuadrícula de enfoque | Vista de diseño | Barra de fórmulas mejorada | Administrador de libros y hojas de cálculo | Biblioteca de AutoTexto | Selector de fechas | Combinar Datos | Encriptar/Descifrar celdas | Enviar correo electrónico por lista | Super Filtro | Filtro especial (filtro negrita/cursiva/tachado...)...
Top15 conjuntos de herramientas:12 herramientas de texto (Agregar texto, Eliminar caracteres, ...) | Más de50 tipos de gráficos (Diagrama de Gantt, ...) | Más de40 fórmulas prácticas (Calcular edad basada en la fecha de nacimiento, ...) |19 herramientas de inserción (Insertar código QR, Insertar imagen desde ruta, ...) |12 herramientas de conversión (Convertir a palabras, Conversión de moneda, ...) |7 herramientas de combinar y dividir (Combinar filas avanzado, Dividir celdas, ...) | ... y mucho más
Utiliza Kutools en tu idioma preferido: ¡compatible con Inglés, Español, Alemán, Francés, Chino y más de40 idiomas adicionales!

Impulsa al máximo tu dominio de Excel con Kutools para Excel y experimenta una eficiencia sin precedentes. Kutools para Excel ofrece más de300 funciones avanzadas para potenciar la productividad y ahorrar tiempo.Haz clic aquí para obtener la función que más necesitas...


Office Tab aporta una interfaz de pestañas a Office y hace tu trabajo mucho más sencillo

  • Habilita la edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
  • Abre y crea varios documentos en nuevas pestañas de la misma ventana, en vez de en nuevas ventanas.
  • ¡Aumenta tu productividad hasta un50% y reduce cientos de clics de ratón cada día!