¿Cómo apilar rápidamente varias columnas en una sola columna en Excel?
En Excel, la función Texto en columnas está diseñada para dividir datos de una única columna en varias columnas utilizando un delimitador especificado. Pero ¿y si necesita hacer justo lo contrario: combinar o apilar los valores de varias columnas en una sola columna, como se muestra en el ejemplo siguiente? Este escenario surge con frecuencia al consolidar conjuntos de datos, preparar información para su análisis o dar formato a informes para su posterior procesamiento. Por desgracia, Excel no incluye una función integrada que apile columnas verticalmente de forma directa, pero existen varias soluciones prácticas que puede aplicar para realizar esta tarea de manera eficiente.
Apilar varias columnas en una con fórmula
Apilar varias columnas en una con VBA
Apilar varias columnas en una con Transformar rango ![]()
Apilar varias columnas en una con Power Query
Apilar varias columnas en una con fórmula
Si prefiere no utilizar macros ni complementos, puede apilar varias columnas en una sola mediante una fórmula matricial que use la función ÍNDICE. Este enfoque es ideal para conjuntos de datos dinámicos o cuando quiere evitar operaciones manuales. Una ventaja clave es que la fórmula actualiza automáticamente los resultados si sus datos de origen cambian, aunque debe ser preciso con los nombres de celda y evitar insertar o eliminar celdas dentro del rango referenciado.
1. Seleccione el rango de datos que desee apilar (por ejemplo, A1:C4), haga clic en el cuadro de nombres (situado a la izquierda de la barra de fórmulas), escriba un nombre significativo como MisDatos y pulse Intro. Así asignará un nombre a su rango para facilitar su referencia.
2. Haga clic en una celda vacía donde quiera que comience la columna apilada (normalmente debajo de sus datos o en otra hoja) y pegue 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. Pulse Intro para confirmar y arrastre el controlador de relleno hacia abajo hasta que aparezca un error como #¡REF! u otro similar, lo que indica que ya se han listado todos los datos. Si es necesario, elimine la celda con el error.
En esta fórmula, MisDatos hace referencia al rango que definió en el paso 1. COLUMNAS(MisDatos) se ajusta automáticamente al número de columnas de sus datos. Asegúrese de no insertar ni eliminar columnas dentro de MisDatosTras introducir la fórmula, ya que podría afectar a los resultados. Si sus datos incluyen celdas vacías, estas también se apilarán; podrá filtrarlas después si lo necesita. En el caso de rangos grandes, arrastrar el controlador de relleno puede llevar tiempo; considere hacer doble clic en él si la columna de la izquierda contiene datos hasta el final.
Si su versión de Excel admite matrices dinámicas (Excel 365 o Excel 2021 y posteriores), puede probar:
=TOCOL(MyData,1) Esta fórmula solo está disponible en versiones más recientes de Excel y combina al instante todas las columnas en una sola.
Apilar varias columnas en una con VBA
Si necesita apilar columnas con frecuencia o desea un mayor control, una macro VBA puede automatizar este proceso en tan solo unos clics. VBA es ideal para usuarios avanzados que manejan grandes volúmenes de datos o tareas repetitivas. Tenga en cuenta, sin embargo, que habilitar macros puede suponer un riesgo de seguridad si no está seguro del origen de la macro. Guarde siempre su archivo con antelación y tenga precaución al ejecutar código desconocido.
1. Pulse Alt + F11 para abrir la ventana de Microsoft Visual Basic para Aplicaciones.
2. En la ventana de VBA, haga clic en Insertar > Módulo. A continuación, copie y pegue 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 
3. Para ejecutar la macro, pulse F5 o haga clic en el botón Ejecutar. Tras ejecutarla, aparecerá un cuadro de diálogo: seleccione el rango de datos que desee apilar y haga clic en Aceptar.
4. A continuación, se le pedirá que seleccione una celda de destino para el resultado. Haga clic nuevamente en Aceptar. Las columnas se apilarán en una sola columna a partir de la celda seleccionada.

Si encuentra un error, compruebe de nuevo los Seleccionar rango y asegúrese de que no haya hojas protegidas ni Combinada. Para personalizaciones más avanzadas, como omitir celdas vacías o apilar únicamente ciertas columnas, puede modificar aún más el código. Recuerde guardar su trabajo antes de ejecutar código VBA para evitar pérdidas no deseadas de datos.
Apilar varias columnas en una con Transformar rango
Si prefiere una solución rápida e intuitiva sin tener que escribir fórmulas ni código, puede utilizar la función Transformar rango de Kutools para Excel. Esta herramienta es especialmente útil para usuarios que necesitan procesar datos al instante mediante una interfaz sencilla, como administrativos u otros profesionales que trabajan habitualmente con datos multidimensionales. Kutools reduce drásticamente el riesgo de errores en fórmulas y ahorra una enorme cantidad de tiempo, aunque requiere instalar el complemento.
Tras instalar gratuitamenteKutools para Excel, siga estos pasos:
1. Seleccione las columnas o el rango de datos que desea apilar en una sola columna. A continuación, haga clic en Kutools > Rango > Transformar rango para abrir el cuadro de diálogo.
2. En el cuadro de diálogo Transformar rango, elija la opción Rango a columna única y haga clic en Aceptar. A continuación, seleccione una celda donde desee que aparezca el resultado.
3. Por último, haga clic en Aceptar. Las columnas seleccionadas se apilarán inmediatamente en una sola columna en la ubicación elegida.
Este método es sencillo y libre de errores. Recuerde que puede deshacer fácilmente cualquier cambio (Ctrl + Z) si algo no parece correcto o volver a aplicar Transformar rango según sea necesario para distintos conjuntos de datos. Si sus datos contienen celdas combinadas, le recomendamos descombinarlas antes de usar esta función para evitar resultados inesperados.
Apilar varias columnas en una con Power Query
Power Query (también denominado Obtener y transformar en algunas versiones de Excel) es otra forma práctica de apilar varias columnas en una, especialmente para usuarios que manejan grandes volúmenes de datos o necesitan automatizar tareas recurrentes de transformación de datos. Power Query está integrado en Excel 2016 y posteriores, y está disponible como complemento gratuito para Excel 2010 y 2013. Es muy útil para la preparación avanzada de datos y puede gestionar fácilmente operaciones complejas de remodelado mediante una interfaz sencilla. No obstante, presenta una ligera curva de aprendizaje para usuarios primerizos.
Cargue su tabla de origen en Power Query. Seleccione sus datos en Excel y vaya a Datos > Desde tabla o rango para abrir el Editor de Power Query.
2. Seleccione todas las columnas en la vista previa de la consulta. Vaya a la pestaña Transformar, busque el grupo Tabla y haga clic en Transponer. ¡Así de fácil invierte filas y columnas!
3. Seleccione de nuevo todas las columnas transpuestas. En la pestaña Transformar, dentro del grupo Cualquier columna, haga clic en Desdinamizar columnas.
4. Elimine la columna «Atributo» si no la necesita. Haga clic con el botón derecho en el encabezado de la columna «Atributo» > Seleccione Eliminar.
5. Haga clic en Cerrar y cargar para enviar el resultado a Excel como una hoja de cálculo nueva o una tabla. En cualquier momento, puede actualizar o volver a aplicar la transformación si sus datos de origen cambian.
Power Query le permite guardar este proceso de apilado como una consulta reutilizable y actualizar los resultados al instante si sus datos cambian en el futuro.
Nota: Este enfoque podría no conservar la información original de los encabezados de columna del Datos de origen.
En resumen, cada uno de estos métodos tiene sus ventajas: las fórmulas son adecuadas para actualizar datos de forma dinámica, VBA es excelente para automatizar tareas repetitivas, Kutools para Excel permite operaciones mediante clics sin necesidad de conocimientos técnicos avanzados y Power Query es ideal para transformaciones avanzadas o recurrentes. Revise siempre sus datos apilados en busca de celdas vacías restantes, Combinada o errores de formato tras el procesamiento. Si aparecen errores o resultados inesperados, verifique cuidadosamente los rangos definidos o las selecciones de pasos. Utilizar una combinación de estos métodos le ayudará a gestionar y transformar eficazmente sus datos de Excel para satisfacer sus necesidades de informes y análisis.
Las mejores herramientas de productividad para Office
Potencie sus habilidades en Excel con Kutools para Excel y experimente una eficiencia como nunca antes.Kutools para Excel ofrece más de 300 funciones avanzadas para aumentar su productividad y Ahorrar tiempo.Haga clic aquí para obtener la función que más necesita...
Office Tab aporta una interfaz con pestañas a Office y hace que su trabajo sea mucho más fácil
- Active la edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
- Abra y cree varios documentos en nuevas pestañas dentro de la misma ventana, en lugar de hacerlo en ventanas separadas.
- ¡Aumente su productividad en un 50 % y elimine cientos de clics del ratón cada día!
Todos los complementos de Kutools en un solo instalador.
Kutools for Office es la suite que incluye complementos para Excel, Word, Outlook y PowerPoint, además de Office Tab Pro, ideal para equipos que trabajan en distintas aplicaciones de Office.
- Suite integral— complementos para Excel, Word, Outlook y PowerPoint + Office Tab Pro
- Un instalador, una licencia— configuración en minutos (compatible con MSI)
- Rendimiento mejorado en conjunto— productividad optimizada en todas las aplicaciones de Office
- Prueba gratuita de 30 días con todas las funciones— sin registro ni tarjeta de crédito
- La mejor relación calidad-precio— ahorre frente a la compra individual de complementos